为了账号安全,请及时绑定邮箱和手机立即绑定

为什么onmouseenter函数里面的i值为13?

为什么onmouseenter函数里面的i值为13?

www说 2018-10-17 17:15:37
        var spans = document.getElementsByTagName("span");        var audios = document.getElementsByTagName("audio");        for(var i = 0 ; i < spans.length ; i ++){            spans[i].index = i;            spans[i].onmouseenter = function(){                //load保留之前的尾音,重新开始新的                console.log(i);                audios[this.index].load();                audios[this.index].play();            }        }页面上有12个span标签,for循环中spans.length的值为12。而这个函数里面的i值弹出的结果是12而不是0到11,为什么?
查看完整描述

1 回答

?
慕运维8079593

TA贡献1876条经验 获得超5个赞

参考一下吧左侧链接,就是异步回调的执行时机和作用域的问题。
还有这个链接

查看完整回答
反对 回复 2018-11-20
  • 1 回答
  • 0 关注
  • 488 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号