2010-02-20 252 views
1

這是一個菜單樹的JavaScript函數。我想在其中添加更多的子菜單,而不僅僅是一個子菜單。什麼是x.all[0]x.all[2]JavaScript摺疊菜單樹

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 
+0

感謝Darin進行編輯。 您是手編輯還是使用編輯器? – Ahmed 2010-02-20 10:42:40

回答

0

all是屬於特定元素的子元素的集合。 document.all返回文檔的所有元素。這是一個IE瀏覽器唯一的功能,並不會在其他瀏覽器工作。

在你的代碼,xevent.srcElement.parentElement,所以它的all財產將所有屬於該父元素的子元素。 [0]將返回集合中的第一個元素,[2]將返回集合中的第三個元素。

如前所述,此代碼僅適用於Internet Explorer,因此如果您希望更好地實現瀏覽器兼容性,則應該探索其他跨瀏覽器方法以實現您正在嘗試執行的操作。

+0

謝謝你的回答。 艾哈邁德。 – Ahmed 2010-02-20 10:44:06