我有这个简单的javascript
代码。
var nodeList = document.getElementById(active_tab_selector.attr('id')).getElementsByTagName('span');
for (var i = 0, node; node = nodeList[i]; i++) {
node.addEventListener('click', function() {getChild(this.getAttribute(attribute));
}, false);
}
但是click
由于某种原因它不起作用,但是如果我删除getElementById(active_tab_selector.attr('id'))
它就可以了。有什么想法吗?
答案 0 :(得分:0)
for循环为每个节点迭代x次,但只有最后一个节点对回调有效 然后通过为特定
中的节点调用addEventListener的方法更改它for (var i = 0, node; node = nodeList[i]; i++) {
addEventTo( node );
}
function addEventTo( node ) {
node.addEventListener( 'click', function () {
getChild(this.getAttribute(attribute));
}, false);
}
有关此here
的详细信息