ftdesign.js

来自「非常好的JAVASCRIPT树型」· JavaScript 代码 · 共 148 行

JS
148
字号
function clickAction(thisNode){
if (selectedNode) 
	{
	if (selectedNode.isFolder)
		selectedNode.setIcon("default","default","default","default")
	else
		selectedNode.setIcon("default","default")
	if (!selectedNode.iconImg)
	{
	if (bV == 2) selectedNode.iconImg = selectedNode.navObj.document.images["nodeIcon"+selectedNode.id]
	else if (bV == 1 || doc.images) selectedNode.iconImg = doc.images["nodeIcon"+selectedNode.id]
	}	
	selectedNode.iconImg.src = selectedNode.nodeIcon("",iNA)
	if (bV == 1) {
	if (doc.all["text" + selectedNode.id]) {
		selectedChild = doc.all["text"+selectedNode.id]
		selectedChild.style.backgroundColor = "transparent"
		selectedChild.style.color = document.vlinkColor
		selectedChild.style.fontWeight = "normal"
		selectedChild.style.fontStyle = "normal"
	}
	}
	}
	if (thisNode.isFolder)
		thisNode.setIcon("globe","globe","globe","globe")
	else
		thisNode.setIcon("globe","globe")
	selectedNode = thisNode
	if (!selectedNode.iconImg)
	{
	if (bV == 2) selectedNode.iconImg = selectedNode.navObj.document.images["nodeIcon"+selectedNode.id]
	else if (bV == 1 || doc.images) selectedNode.iconImg = doc.images["nodeIcon"+selectedNode.id]
	}	

	thisNode.iconImg.src = thisNode.nodeIcon("",iNA)
	if (bV == 1) {

	if (!selectedNode.navObj) selectedNode.navObj = doc.all["node" + selectedNode.id]
	if (doc.all["text" + selectedNode.id]) {
		selectedChild = doc.all["text"+selectedNode.id]
	selectedChild.style.fontStyle = "italic"
	selectedChild.style.backgroundColor = "darkblue"
	selectedChild.style.color = "white"
	selectedChild.style.fontWeight = "bold"
	}
	}
var nodefrm = self.frames["formfrm"].document.forms["design"]

nodefrm.node_text.value = selectedNode.desc
nodefrm.node_link.value = selectedNode.hreference

}

function changeNode() {
var nodefrm = self.frames["formfrm"].document.forms["design"]

selectedNode.desc = nodefrm.node_text.value
selectedNode.hreference = nodefrm.node_link.value
parent.firstInitial = true;
// void parent.blank()
parent.rewritepage()
clickAction(selectedNode)
}
function addNode() {
var nodefrm = self.frames["formfrm"].document.forms["design"]
nodetext = nodefrm.node_text.value
nodelink = nodefrm.node_link.value
if (selectedNode.isFolder) {
insDoc(selectedNode, gLnk(nodetext,nodelink))
selectedNode.isInitial = true
selectedNode.isOpen = true
}
parent.firstInitial = true;
// void parent.blank()
parent.rewritepage()
clickAction(selectedNode)
nodefrm.node_text.value = nodetext
nodefrm.node_link.value = nodelink

}

function removeNode() {
found = false
for (i=0; i < selectedNode.nodeParent.nC; i++) {
if (selectedNode.nodeParent.c[i] == selectedNode) {
found = true
selectedNode.nodeParent.nC--;
}
if (found && i < selectedNode.nodeParent.nC)
selectedNode.nodeParent.c[i] = selectedNode.nodeParent.c[i+1]
}
selectedNode = 0
parent.firstInitial = true;
// void parent.blank()
parent.rewritepage()
}

function writeMenu(d,node,level) {
for (var j = 0; j < level + 1; j++) {
d.write("  ")
}
aux1 = "aux" + level
aux2 = "aux" + (level - 1)
if (level == 1) aux2 = "fT"
if (level == 0) {
d.write("fT = gFld(\"" + node.desc + "\",\"" + node.hreference + "\")\n")
} else {
if (node.isFolder)
d.write(aux1 + " = insFld(" + aux2 + ",gFld(\"" + node.desc + "\",\"" + node.hreference + "\"))\n")
else
d.write(aux1 + " = insDoc(" + aux2 + ",gLnk(\"" + node.desc + "\",\"" + node.hreference + "\"))\n")

}
var i;
level = level + 1
for (i=0; i < node.nC; i++) {
writeMenu(d,node.c[i],level)
}
}

iconFolder = "../images/" 
ftFolder = "../"
addImage("globe","globe.gif")
fT = gFld("<i>Been There</i>", "ftbase.htm")
	aux1 = insFld(fT, gFld("Europe", "ftbase.htm"))
	      aux2 = insFld(aux1, gFld("United Kingdom", "ftbase.htm"))
		      aux3 = insFld(aux2, gFld("Scotland", "ftbase.htm"))
				insDoc(aux3, gLnk("Edinburgh", "ftbase.htm"))
 			insDoc(aux2, gLnk("London", "ftbase.htm"))
	      aux2 = insFld(aux1, gFld("Germany", "ftbase.htm"))
 			insDoc(aux2, gLnk("Munich", "ftbase.htm"))
	      aux2 = insFld(aux1, gFld("Greece", "ftbase.htm"))
 			insDoc(aux2, gLnk("Athens", "ftbase.htm"))
	      aux2 = insFld(aux1, gFld("Italy", "ftbase.htm"))
		      aux3 = insFld(aux2, gFld("Tuscany", "ftbase.htm"))	
			insDoc(aux3, gLnk("Florence", "ftbase.htm"))
				insDoc(aux3, gLnk("Pisa", "ftbase.htm"))
			insDoc(aux2, gLnk("Rome", "ftbase.htm"))
	      aux2 = insFld(aux1, gFld("Portugal", "ftbase.htm"))
 			insDoc(aux2, gLnk("Lisboa", "ftbase.htm"))
     aux1 = insFld(fT, gFld("America", "ftbase.htm"))
	      aux2 = insFld(aux1, gFld("Canada", "ftbase.htm"))
 			insDoc(aux2, gLnk("Montreal", "ftbase.htm"))
	      aux2 = insFld(aux1, gFld("United States", "ftbase.htm"))
 			insDoc(aux2, gLnk("Boston", "ftbase.htm"))
 			insDoc(aux2, gLnk("New York", "ftbase.htm"))
 			insDoc(aux2, gLnk("Washington", "ftbase.htm"))

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?