北辰红橡墅:在firefox中不能正确显示的用javascript写的树形结构?急,在线等!
来源:百度文库 编辑:神马品牌网 时间:2024/04/29 05:37:32
在IE中能够显示的用javascript写的树形结构为什么放到firefox中就不能够正确的显示呢?请各位高手帮忙!这是部分代码(在firefox中报错的)
function GoodTree(objName)
{
this.id = "tree_"+objName;
this.obj = objName;
this.length = 0;
this.addTree = addTree;
this.addLine = addLine;
this.addEndTree = addEndTree;
this.endTree = endTree;
document.all.innerHTML += '<div id="stage_'+this.id+'" style="display: none"><table width="100%" border="0" cellspacing="0" cellpadding="0" class="TreeBgColor"><tr><td id="td_'+this.id+'"></td></tr></table></div>';
}
function SubTree(objName,objID)
{
this.obj = objName;
this.id = objID;
this.addTree = addTree;
this.addLine = addLine;
this.addEndTree = addEndTree;
this.length = 0;
}
//---------- 菜单 方法 addTree ------------//
function addTree(explain,title)
{
var subID = this.id + "_" + this.length;
var subObj = this.obj+"["+this.length+"]";
var oldID = "td_"+ this.id;
eval(subObj+"= new SubTree('"+subObj+"','"+subID+"')");
MakeTree(subID,oldID,explain,1,title);
this.length++;
}
function addEndTree(explain,title)
{
var subID = this.id + "_" + this.length;
var subObj = this.obj+"["+this.length+"]";
var oldID = "td_"+ this.id;
eval(subObj+"= new SubTree('"+subObj+"','"+subID+"')");
MakeTree(subID,oldID,explain,0,title);
this.length++;
}
function addLine(explain,url,target,title)
{
var subID = this.id + "_" + this.length;
var oldID = "td_"+ this.id;
MakeLine(subID,oldID,explain,url,target,title);
this.length++;
}
//--------- 完成 菜单 和 消去 变量和 源蓝图 并且输出 -------------//
function endTree(place)
{
var the_stage = eval("stage_"+ this.id);
var obj = eval(place);
obj.innerHTML += the_stage.innerHTML;
document.getElementById("stage_"+ this.id).outerHTML ="";
eval(this.obj+"=null");
}
//-----------菜单的 隐藏 和显示 ------------//
var temp_tree_index = null; //纪录点击的TD的 sourceIndex
function TreeControl(obj)
{
var tr_obj = eval(obj);
var sign_obj = eval("sign_"+obj);
if(temp_tree_index)
{
document.all(temp_tree_index).className = "ExplainOFF"
}
event.srcElement.className = "ExplainON";
temp_tree_index = event.srcElement.sourceIndex;
if(tr_obj.style.display=="none")
{
tr_obj.style.display = "block";
sign_obj.src = TreeImg[0].src;
return;
}
if(tr_obj.style.display=="block")
{
tr_obj.style.display = "none";
sign_obj.src = TreeImg[1].src;
return;
}
}
function LineControl()
{
if(temp_tree_index)
{
document.all(temp_tree_index).className = "ExplainOFF"
}
event.srcElement.className = "ExplainON";
temp_tree_index = event.srcElement.sourceIndex;
}
function SiblingClick()
{
event.srcElement.parentElement.nextSibling.firstChild.click();
}
var One = new GoodTree("One");
function GoodTree(objName)
{
this.id = "tree_"+objName;
this.obj = objName;
this.length = 0;
this.addTree = addTree;
this.addLine = addLine;
this.addEndTree = addEndTree;
this.endTree = endTree;
document.all.innerHTML += '<div id="stage_'+this.id+'" style="display: none"><table width="100%" border="0" cellspacing="0" cellpadding="0" class="TreeBgColor"><tr><td id="td_'+this.id+'"></td></tr></table></div>';
}
function SubTree(objName,objID)
{
this.obj = objName;
this.id = objID;
this.addTree = addTree;
this.addLine = addLine;
this.addEndTree = addEndTree;
this.length = 0;
}
//---------- 菜单 方法 addTree ------------//
function addTree(explain,title)
{
var subID = this.id + "_" + this.length;
var subObj = this.obj+"["+this.length+"]";
var oldID = "td_"+ this.id;
eval(subObj+"= new SubTree('"+subObj+"','"+subID+"')");
MakeTree(subID,oldID,explain,1,title);
this.length++;
}
function addEndTree(explain,title)
{
var subID = this.id + "_" + this.length;
var subObj = this.obj+"["+this.length+"]";
var oldID = "td_"+ this.id;
eval(subObj+"= new SubTree('"+subObj+"','"+subID+"')");
MakeTree(subID,oldID,explain,0,title);
this.length++;
}
function addLine(explain,url,target,title)
{
var subID = this.id + "_" + this.length;
var oldID = "td_"+ this.id;
MakeLine(subID,oldID,explain,url,target,title);
this.length++;
}
//--------- 完成 菜单 和 消去 变量和 源蓝图 并且输出 -------------//
function endTree(place)
{
var the_stage = eval("stage_"+ this.id);
var obj = eval(place);
obj.innerHTML += the_stage.innerHTML;
document.getElementById("stage_"+ this.id).outerHTML ="";
eval(this.obj+"=null");
}
//-----------菜单的 隐藏 和显示 ------------//
var temp_tree_index = null; //纪录点击的TD的 sourceIndex
function TreeControl(obj)
{
var tr_obj = eval(obj);
var sign_obj = eval("sign_"+obj);
if(temp_tree_index)
{
document.all(temp_tree_index).className = "ExplainOFF"
}
event.srcElement.className = "ExplainON";
temp_tree_index = event.srcElement.sourceIndex;
if(tr_obj.style.display=="none")
{
tr_obj.style.display = "block";
sign_obj.src = TreeImg[0].src;
return;
}
if(tr_obj.style.display=="block")
{
tr_obj.style.display = "none";
sign_obj.src = TreeImg[1].src;
return;
}
}
function LineControl()
{
if(temp_tree_index)
{
document.all(temp_tree_index).className = "ExplainOFF"
}
event.srcElement.className = "ExplainON";
temp_tree_index = event.srcElement.sourceIndex;
}
function SiblingClick()
{
event.srcElement.parentElement.nextSibling.firstChild.click();
}
var One = new GoodTree("One");