JS获取点击的数组元素的下标, t 始终是titleImg的长度。

JS获取点击的数组元素的下标, t 始终是titleImg的长度。,第1张

问题都没说清楚,什么叫t始终是titleImg的长度?

看了下你的代码,你是想说,所有div的click的事件里,t的值都是4,而不是0,1,2,3??

如果是这个问题,那么就简单了,

t的作用域问题造成的,

你给4个div绑定了click事件,估计是这么写的:

for(var t=0,i=timglength;t<i;t++){
titleImg[t]addEventListener('click', function(idx,ele){
alert(t);
}, false);
}

这个t是函数外部定义的变量,它的值会被外部修改,在循环执行完后,t的值已经是4了,

所以4个click函数里的t也都是4,你要在循环里定义一个局部变量,如:

for(var t=0,i=timglength;t<i;t++){
var tmpt = t;
titleImg[t]addEventListener('click', function(idx,ele){
alert(tmpt);
}, false);
}

就ok了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12799777.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-28
下一篇 2023-05-28

发表评论

登录后才能评论

评论列表(0条)

保存