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

this.textContent 与 e.target.textContent 有和区别?

alert(e.target.textContent)

alert(this.textContent)

这两者有什么区别吗?还是它们在实战中都有各自的意义?


正在回答

2 回答

  1. 第一个e是触发这个事件的本身元素(可以看做对像),第二个this这个执行这个方法的对像(一、如果这个事件会冒泡,他的父级也有这个事件,那么这个元素本身会先执行这个函数,然后父亲会执行。二、如果采用了事件委托,那么,this就是受委托人,e是委托人)

  2. 如果扫行这个方法的对像就是触发这个事件本身元素那么他们的结果是相同的,(只有在事件不具有冒泡性质并且这个事件的本身元素并没有把事件委托给父级对像时才可以保证这种情况,)

2 回复 有任何疑惑可以回复我~
#1

班大人 提问者

非常感谢!
2016-10-27 回复 有任何疑惑可以回复我~

this是可变的,谁调用了“我“,this就指向谁,但e.target是指直接触发事件的那个对象,不管冒泡,如,你在一个div中点击一个按钮,按钮和div都有点击事件,e.target就是指你直接点击的那个按钮,而不是div

4 回复 有任何疑惑可以回复我~
#1

班大人 提问者

非常感谢,你们两位说的都有道理。
2016-10-27 回复 有任何疑惑可以回复我~
#2

慕妹7508549 回复 班大人 提问者

是他说的那样,就像我说的“第二个this这个执行这个方法的对像”你把方法看成说的我就可以了
2016-10-27 回复 有任何疑惑可以回复我~
#3

慕妹7508549 回复 班大人 提问者

一个意思
2016-10-27 回复 有任何疑惑可以回复我~
#4

慕瓜5289634

thanks
2016-11-10 回复 有任何疑惑可以回复我~
查看1条回复

举报

0/150
提交
取消

this.textContent 与 e.target.textContent 有和区别?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信