博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js中this与srcElement的区别
阅读量:4985 次
发布时间:2019-06-12

本文共 751 字,大约阅读时间需要 2 分钟。

   对于js初学着必须理解this和srcElement的应用,这也是面试中经常考到的。

  this:

  下面先看一个例子:

1  2  this与srcElement的区别 3  4  

 此时弹出的答案为“undefined”,说明在调用函数时不能使用this.属性来获取。再看下一个例子:

1  2  3  4     无标题页 5     10 11 12 13 14 15 

此时得出的答案为“单击”,此时为什么可以呢?从代码中可以看出,在onclick事件调用函数btnClick()时,将this当作参数传递给了函数。

综合以上:在函数调用时不能直接使用this.属性来获取,而必须将this当作参数传递。

 window.event.srcElement:

下面看一个例子:

1  2  3  4     无标题页 5     10 11 12 13 14 15 

此时得出的答案为“单击”,说明在调用函数时可以使用window.event.srcElement.属性来获取。

为什么this不能直接使用而window.event.srcElement可以直接使用呢?从单纯的字面上说this的意思是“当前”。在函数调用时,没有指定具体是哪一个控件,在函数中直接用this是不可以的。在第二段代码中就将this当成了参数传递,所以能得出正确的答案。

 

其实this和window.event.srcElement的使用区别是:如果要直接使用this.属性,此时的函数不能是被调用的而必须是响应函数,而window.event.srcElement则无此限制。

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/sun-sjmeng/archive/2012/05/23/2514125.html

你可能感兴趣的文章
架构师速成5.1-小学gtd进阶
查看>>
Spring-aop(一)
查看>>
ucos在xp平台下开发环境搭建
查看>>
python基础入门while循环 格式化 编码初识
查看>>
cmake方式使用vlfeat
查看>>
windows下用纯C实现一个简陋的imshow:基于GDI
查看>>
struts2 自定义类型转换器
查看>>
nginx 服务器
查看>>
cocos2d-x xna在有vs2012和vs2010的情况下的环境部署
查看>>
43-安装 Docker Machine
查看>>
c++学习(三):表达式和语句
查看>>
laravel框架基础知识总结
查看>>
nginx: 响应体太大
查看>>
字符串反混淆实战 Dotfuscator 4.9 字符串加密技术应对策略
查看>>
单例模式
查看>>
Robotium源码分析之Instrumentation进阶
查看>>
Android 交错 GridView
查看>>
(2)把BlackBerry作为插件安装到已有的Eclipse中
查看>>
VUE-es6
查看>>
MySQL-5.7 高阶语法及流程控制
查看>>