【发布时间】:2015-09-27 11:18:16
【问题描述】:
我创建了一个选择 2 个 div 的节点列表。然后我创建一个函数来显示用户单击的 div 的索引。但是输出总是2。我不知道错误在哪里。
这只是一个简单的问题,但它将解决我在事件中包含许多事件的其他复杂问题。谢谢。
HTML:
<div style="background:red; height:50px"></div>
<div style="background:black; height:50px"></div>
Javascript:
var div = document.getElementsByTagName('div');
for (i = 0; i < div.length; i++) {
div[i].onclick = function() {
alert(i);
}
}
【问题讨论】:
-
这是一种在 div 上设置函数的奇怪方式。在用户点击之前,代码不会一直循环通过一组 div 吗? (意味着页面上的 div 数量将始终是警报,而不是 div 的索引)
标签: javascript html events dom getelementsbytagname