<div class="box">111111</div>
<div class="box">111111</div>
<div class="box">111111</div>
<div class="btn">点击事件</div>
<script>
var ones = ["实验1","实验2","实验3"]
for(let i=0;i<ones.length;i++){
$(".box")[i].onclick = function(){
$(".btn").click(function(){
console.log(ones[i]);
})
}
}
</script>
这里描述一下问题,正常来说我点击页面上的111,在点击页面上的(点击事件这个按钮),就会取到数组里对应的值(这里是没问题的).但是如果我点击其中一个111,在点击另外一个111,最后再点击触发console的那个点击事件。就会把之前点击那个值一起获取,打印出2个值。这里为什么会把上一次的值存进去了,难道2次点击事件创建了2个btn函数,同时里面的值存进去2个地址?不明白!
业余奶茶品鉴师