為什么TagName(“li”)【3】,前一個節點居然是空的?
??function?get_previousSibling(x){ ????????var?x=x.previousSibling; ????????while(x&&x.nodeType!=1){ ????????????x=x.previousSibling; ????????} ????????return?x ????} ????var?x=document.getElementsByTagName("li")[3]; ????document.write("<br>"+"<br>"+x.nodeName); ????document.write("=") ????document.write(x.innerHTML); ???? ????var?a=get_previousSibling(x) ???? ????if(a!=null){ ????document.write("<br?/>previoussibling:?"); ????document.write(a.nodeName); ????document.write("=") ????document.write(a.innerHTML); ????} ????else{ ????????document.write("<br>已經是最后一個節點"); ????}
為什么這里“var x=document.getElementsByTagName("li")[3];” 寫3的時候,輸出是
“LI=css3
已經是最后一個節點”
之前的空白節點不是已經篩選過了嗎?,那應該是“html”才對啊。
難道我篩選的函數寫錯了?
2017-03-19
你應該寫2,document.getElementByTagName()返回的是一個數組,數組來算的話你想要"html",下標就要是寫2了。從0開始算。。。。