有一个简单的for循环,任何人都可以向我解释为什么它不起作用?
这是代码(它也在小提琴中)
JS -
var anchors = document.getElementsByTagName('a');
for (var i, anchor; anchor = anchors[i]; i++) {
console.log('looping');
anchor.addEventListener("click", setNavigation, false);
}
HTML -
<a href="#"></a>
<a href="lol"></a>
答案 0 :(得分:3)
您忘记将i
初始化为值0
。使用for (var i=0, …
。
顺便说一句,通常你检查i
是否小于迭代集合的length
,而不是在循环条件中查找truthy值。那么您也不需要额外的变量anchor
:
var anchors = document.getElementsByTagName('a');
for (var i=0; i<anchors.length; i++) {
console.log('looping');
anchors[i].addEventListener("click", setNavigation, false);
}