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

这里的this为何要赋值给othis再用,othis与原来的this有什么区别?为什么不能把

这里的this为何要赋值给othis再用,othis与原来的this有什么区别?为什么不能把

潇湘沐 2018-12-12 18:19:42
function gun(){    this.gun=document.createElement("div")    this.gun.className="gunBox"    document.body.appendChild(this.gun);    var othis = this;    this.move = function(){        document.addEventListener('mousemove',function(e){            othis.gun.style.left = e.clientX - 48+'px';            othis.gun.style.top = e.clientY - 48+'px';            othis.gun.style.display = "block";        })    }}
查看完整描述

1 回答

?
慕斯王

TA贡献1864条经验 获得超2个赞

// ...

document.addEventListener('mousemove',function(e){

    // 这里的this指向已经改变,所以要用othis缓存之前的对象

})

javascript的this的理解
JavaScript中的this
换个思路理解Javascript中的this

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

添加回答

举报

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