我有这段代码:
var items = this.llistat.getElementsByTagName('a');
for( var i = 0; i < items.length; i++ ){
items[i].addEventListener('click', function(event) {
alert( i );
}, items[i]);
}
事件被监听,但有 3
个项目,而且警报始终在任何元素上打印 3
(它不尊重索引),
items[i]
不应该作为闭包完成任务吗?
谢谢!
addEventListener
的第三个参数是一个布尔值,用于指示事件监听器是否具有捕获优先级(例如,使其可取消);它不指定this
值。 - apsillers