本文介绍了getElementById与getElementsByTagName的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
基本问题。
document.getElementById("yy").onmouseover = hi;
//document.getElementsByTagName("li").onmouseover = hi;
...
在这个例子中,为什么第一行有效,但不是第二行(未注释的时候,当然)?
In this example, http://jsfiddle.net/8fURz/1/ why does the first line work, but not the second line (when it is un-commented, of course)?
我知道我可以用jQuery轻松做到这一点,只是想知道......
I know I can do this easily with jQuery, just wonderin...
推荐答案
因为 document.getElementsByTagName(li)
返回 NodeList
,你需要将事件处理程序绑定到 NodeList
的每个元素。
Because document.getElementsByTagName("li")
return a NodeList
, you need to bind event handler to every element of the NodeList
.
var list = document.getElementsByTagName("li");
for (var i= 0; i < list.length; i++) {
list[i].onmouseover = hi;
}
这篇关于getElementById与getElementsByTagName的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!