js循环遍历添加监听
<button>测试1</button>
<button>测试2</button>
<button>测试3</button>
<script>
var btns = document.getElementsByTagName('button')
for (var i = 0, len = btns.length; i < len; i++) {
var btn = btns[i]
btn.onclick = function () {
alert('第' + i + 1 + '个') // 都是第四个 //i使用的是全局变量
}
}
var btns = document.getElementsByTagName('button')
for (var i = 0, len = btns.length; i < len; i++) {
var btn = btns[i]
// 将btn所对应的下标保存在btn上
btn.index = i
btn.onclick = function () {
alert('第' + this.index + 1 + '个') // 这种可以
}
}
var btns = document.getElementsByTagName('button')
for (var i = 0, len = btns.length; i < len; i++) {
(function(i) {
var btn = btns[i]
btn.onclick = function () {
alert('第' + i + 1 + '个') // 这种也可以
}
})(i)
}
</script>
浙公网安备 33010602011771号