
DOM事件中this的指向问题
发布日期:2021-05-07 16:40:47
浏览次数:20
分类:原创文章
本文共 823 字,大约阅读时间需要 2 分钟。
几种DOM事件绑定方式下的this指向
1 通过在标签中指定
方法1:
<script> function test() { console.log(this); }</script><button onclick="test()">点我</button>
结果指向window对象
方法2:将this传递给事件处理函数
<button onclick="test(this)">点我</button>// test中传递了一个实参,指定上下文对象为button节点,则在该函数中应该使用一个形参接收<script> function test(context) { console.log(context); }</script>
结果指向button节点
方法3:直接将函数体写在标签中
<button onclick="console.log(this);">点我</button>
结果指向button节点
方法4:通过call,apply修改this指向
<button onclick="test.call(this)">点我</button><script> function test() { console.log(this); }</script>
2 在脚本中绑定
均指向button节点
<button id="btn">点我</button>btn.onclick = function () { console.log(this);};btn.addEventListener("click", function () { console.log(this);});
3 总结
只有通过标签体直接指定时this会指向window对象,其余情况下this均会指向dom节点
发表评论
最新留言
感谢大佬
[***.8.128.20]2025年04月07日 10时10分49秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
TDengine使用(一)——TDengine下载与安装
2019-03-05
6.14编一个程序,将两个字符串s1和s2比较,不要用strcmp函数。
2019-03-05
Java纯文本文件显示工具制作
2019-03-05
Unity2D Fixed Joint 2D详解
2019-03-05
六、Numpy的使用(详解)
2019-03-05
三、案例:留言板 & url.parse()
2019-03-05
Python中的filter()函数!!!1
2019-03-05
Python实验26:计算文件MD5值
2019-03-05
端口探测
2019-03-05
LeetCode:28. 实现 strStr()——————简单
2019-03-05
LeetCode:697. 数组的度————简单
2019-03-05
LeetCode:1052. 爱生气的书店老板————中等
2019-03-05
C语言的6大基本数据类型!(学习C语言小白必备!!)
2019-03-05
Vue——mock模拟数据的使用
2019-03-05
Nginx配置反向代理与负载均衡
2019-03-05
高阶函数reduce
2019-03-05
Lionheart万汇:布林线双底形态分析技巧
2019-03-05
Lionheart万汇:台积电大幅提升资本开支,2021有望续创辉煌
2019-03-05
LHCM万汇:在需求上升中,美国贸易赤字创下历史新高
2019-03-05