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

在匿名函数中 aDiv[i].style.background="red"; //为什么不能这样写呢?

在匿名函数中 aDiv[i].style.background="red"; //为什么不能这样写呢?

09卖一品牛肉粒 2019-04-26 16:48:32
<!doctype html><html><head><title>运动</title><meta charset="utf-8"><style>.div1{width:100px;height:100px;float:left;background:#ccc;margin:5px;}</style><script>window.onload=function(){    aDiv=document.getElementsByClassName('div1');       for(var i=0;i<aDiv.length;i++)    {aDiv[i].onclick=function(){this.style.background="red";// aDiv[i].style.background="red";    //为什么不能这样写呢?}       }   }</script></head><body><div class="div1"></div><div class="div1"></div><div class="div1"></div><div class="div1"></div><div class="div1"></div><div class="div1"></div><div class="div1"></div><div class="div1"></div><div class="div1"></div><div class="div1"></div><div class="div1"></div><div class="div1"></div><div class="div1"></div><div class="div1"></div><div class="div1"></div></body></html>
查看完整描述

1 回答

?
HalfAnHour

TA贡献52条经验 获得超73个赞

作用域在作怪。匿名函数中的aDiv[i]是undefined的,不在同一个作用域当中。


查看完整回答
反对 回复 2019-04-27
  • 1 回答
  • 0 关注
  • 898 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信