<a href="images/fireworks.jpg" onclick="showPic(this)">Fireworks</a>
我的理解是:在a对象中,有一个onclick方法,也就是a.onclick=function() { showPic(this) },所以this是a。
请问为什么在onclick中的this代表a呢?谢谢。
认证高级PHP讲师
onclick 是这个对象的一个属性,调用的时候属性内的 this 正常情况下就是指向这个对象的,写成这样你应该能懂:
onclick
this
var anchor = document.querySelector("a"); anchor.onclick = function() { showPic(this) };
onclick 是 anchor 对象的一个方法,当用户点击触发事件的时候执行的是 anchor.onclick() 这个函数,所以 onclick 内部的 this 自然是指向 anchor 了。
anchor
anchor.onclick()
this代表的是当前作用域的对象
onclick
是这个对象的一个属性,调用的时候属性内的this
正常情况下就是指向这个对象的,写成这样你应该能懂:onclick
是anchor
对象的一个方法,当用户点击触发事件的时候执行的是anchor.onclick()
这个函数,所以onclick
内部的this
自然是指向anchor
了。this代表的是当前作用域的对象