Складываемое дерево JavaScript - PullRequest
1 голос
/ 20 февраля 2010

Это функция JavaScript для дерева меню. Я хотел бы добавить больше подменю, а не только одно подменю. Что такое x.all[0] и x.all[2]?

var head="display:''"  
img1=new Image()  
img1.src="fold.gif"  
img2=new Image()  
img2.src="open.gif"  

function change(){  
if(!document.all)  
return  
if (event.srcElement.id=="folding"){  
var x=event.srcElement.parentElement  
if (x.all[2].style.display=="none"){  
x.all[0].src="open.gif"  
x.all[2].style.display=''  
alert(x.all[2].name )  
}  
else{  
x.all[0].src="fold.gif"  
x.all[2].style.display="none"  
}  

}  
document.onclick=change  

1 Ответ

0 голосов
/ 20 февраля 2010

all - это коллекция дочерних элементов, принадлежащих определенному элементу. document.all возвращает все элементы для документа. Это функция только для IE, и она не будет работать в других браузерах.

В вашем коде x равно event.srcElement.parentElement, поэтому его свойство all будет всеми дочерними элементами, принадлежащими этому родительскому элементу. [0] вернет первый элемент в коллекции, а [2] вернет третий элемент в коллекции.

Как упоминалось ранее, этот код будет работать только в Internet Explorer, поэтому вам следует изучить другие кросс-браузерные методы, чтобы добиться того, что вы пытаетесь сделать, если вам нужна лучшая совместимость с браузером.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...