problem med ie7
Hej eksperten,Jeg har et script som laver en <ul> liste om til en treemenu og det virker fint i firefox, men i ie7 virker det ikke, de plus/minus knapper jeg sætter ind med javascript virker ikke? her er hele min kode:
var ParentArea = "none";
var SubPart = "none";
var dragDiv = "";
var Tree = "";
var imageFolder = "../ui/";
var plusImage = "wi_plus.gif";
var minusImage = "wi_minus.gif"
var blankImage = "wi_nothing.jpg";
var folderImage = "wi_file_on.jpg";
var dragOn = false;
var dragNode = "";
var dragCode = "";
function SetTree(id){
Tree = document.getElementById(id);
var PageItems = Tree.getElementsByTagName('LI'); // Get an array of all menu items
for(var num=0;num<PageItems.length;num++){// for loop ............ 1
var subpages = true;
var temp = PageItems[num].getAttribute('subpages');
if(!temp)temp = PageItems[num].subpages;
if(temp=='false')subpages=false;
var move = true;
var temp = PageItems[num].getAttribute('move');
if(!temp)temp = PageItems[num].move;
if(temp=='false')move=false;
var subItems = PageItems[num].getElementsByTagName('UL');
var plusImg = document.createElement('IMG');
if(subItems.length==0)
{
plusImg.src = imageFolder + blankImage;
}else{
plusImg.src = imageFolder + plusImage;
plusImg.setAttribute( "onclick", "toggleNodes(this.parentNode.id)");
plusImg.setAttribute( "onmousedown", "toggleNodes(this.parentNode.id)");
subItems[0].id = "ul" + PageItems[num].id ;
subItems[0].style.display = "none";
}
var aTag = PageItems[num].getElementsByTagName('A')[0];
aTag.id = 'nodeATag' + PageItems[num].id.replace(/[^0-9]/gi,'');
aTag.setAttribute( "onclick", "toggleNodes(this.parentNode.id)");
if(move)aTag.setAttribute( "onmousedown", "StartDrag(this.parentNode.id)");
if(move)aTag.setAttribute( "onmouseup", "EndDrag(this.parentNode.id)");
if(subpages == true)aTag.setAttribute( "onmouseover", "dropArea(this.parentNode.id)");
if(subpages == true)aTag.setAttribute( "onmouseout", "endDropArea(this.parentNode.id)");
PageItems[num].insertBefore(plusImg,aTag);
var checkbox = document.createElement('INPUT');
checkbox.setAttribute( "type", "checkbox" );
PageItems[num].insertBefore(checkbox,aTag);
var temp = PageItems[num].getAttribute('folderImage');
if(!temp){
defaultFolderImage= folderImage;
}
else{
defaultFolderImage = temp;
}
var folderImg = document.createElement('IMG');
folderImg.src = imageFolder + defaultFolderImage;
PageItems[num].insertBefore(folderImg,aTag);
var sortImg = PageItems[num].getElementsByTagName('IMG')[2];
if(subItems.length==0)
{
sortImg.style.display = "none";
}else{
sortImg.setAttribute( "onclick", "sortNodes(this.parentNode.id)");
}
}// for loop ............ 1 end
document.getElementById('ul' + PageItems[0].id).style.display = "block";
thisNode = PageItems[0].getElementsByTagName('IMG')[0];
thisNode.src = thisNode.src.replace(plusImage,minusImage);
}
function StartDrag(node){
dragOn = true;
dragNote = node;
var LIData = "";
document.onmouseup = EndDrag();
LIData += ' id=' + '"' + node + '" ';
if(document.getElementById(node).getAttribute('subpages'))
LIData += ' subpages=' + '"' + document.getElementById(node).getAttribute('subpages') + '" ';
if(document.getElementById(node).getAttribute('move'))
LIData += ' move=' + '"' + document.getElementById(node).getAttribute('move') + '" ';
dragCode = "<li" + LIData + ">";
dragCode += document.getElementById(node).innerHTML;
dragCode += "</li>";
//document.getElementById("dragContent").style.display = "block";
//document.getElementById("dragContent").innerHTML = "<ul>" + dragCode + "</ul>";
}
function EndDrag(){
dragOn = false;
document.getElementById("dragContent").style.display = "none";
document.getElementById("dragContent").innerHTML = "";
}
function dropArea(node){
if(dragOn == true){
}
}
function endDropArea(node){
}
function toggleNodes(node){
var id = 'ul' + node;
thisNode = document.getElementById(node).getElementsByTagName('IMG')[0];
var stat = document.getElementById(id).style.display;
if(stat == "none"){
document.getElementById(id).style.display = "block"
thisNode.src = thisNode.src.replace(plusImage,minusImage);
}else{
document.getElementById(id).style.display = "none"
thisNode.src = thisNode.src.replace(minusImage,plusImage);
}
}
function sortNodes(node){
alert("sort");
}
function collapseTree()
{
}
