发布网友 发布时间:2022-04-29 13:23
共6个回答
懂视网 时间:2022-05-15 16:07
本文主要为大家带来一篇基于js中this和event 的区别(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。今天在看javascript入门经典-事件一章中看到了 this 和 event 两种传参形式。因为作为一个初级的前端开发人员平时只用过 this传参,so很想弄清楚,this和event的区别是什么,什么情况下用什么比较合适。
onclick = changeImg(this) vs onclick = changeImg(event)
<img src='usa.gif' onclick="changeImg(event)" /> <script> var myImages = [ 'usa.gif','canada.gif','jamaica.gif','mexico.gif' ]; function changeImg(e) { var el = e.target; var newImgNumber = Math.round(Math.round()*3); while(el.src.indexOf(myImages[newImgNumber]) != -1){ el.src =myImages[newImgNumber]; } } </script>
1.this是Javascript语言的一个关键字。
2.this代表函数运行时,自动生成的一个内部对象,只能在函数内部使用。
3.this和event.target的区别:
js中事件是会冒泡的,所以this是可以变化的,但event.target不会变化(在事件触发时,只传递当前event对象的引用),它永远是直接接受事件的目标DOM元素;
另外,this和event.target都是dom对象,如果要使用jquey中的方法可以将他们转换为jquery对象:$(this)和$(event.target);
热心网友 时间:2022-05-15 13:15
关于JQuery中this和event.target的区别如下:
1、js中的事件会冒泡,因此可以更改,
但是event.target不会更改,它始终指向触发事件本身的DOM元素;
2、假设htm是<div> <span> </ span> </ div>,单击span时,更改span的颜色。
如果使用this按钮单击span,则由于事件起泡机制,div将更改颜色。
但是使用event.target就不会。
扩展资料:
关于JQuery中this的用法举例
例1:
$("#btnConfirm").click(function(){alert($(this).val()); // ,在这里,this指的是这个ID为btnConfirm的选项,因为你现在点击的是ID为btnConfirm的选项,因此this就是它})
例2:
$("ul li").each(function(){alert( $(this).text()); // ,这里的this指的是迭代的每个li元素,因为每次迭代,得到的都是一个<li>元素,因此这个时候this 就代表着这个当前的<li>元素
热心网友 时间:2022-05-15 14:33
this和event.target的区别:热心网友 时间:2022-05-15 16:08
this是Javascript语言的一个关键字。
this代表函数运行时,自动生成的一个内部对象,只能在函数内部使用。
this和event.target的区别:
1)js中事件是会冒泡的,所以this是可以变化的,但event.target不会变化,它永远是直接接受事件的目标DOM元素;
2)this和event.target都是dom对象,如果要使用jquey中的方法可以将他们转换为jquery对象:$(this)和$(event.target);
热心网友 时间:2022-05-15 17:59
event.target:触发当前事件的源对象 如: var a = document.getElementById('test'); a.addEventListener('click', function(event) { //这里面event.target就是a对象 }, false); srcElement是IE下的属性 target是Firefox下的属性 Chrome浏览器同时有这两个属性热心网友 时间:2022-05-15 20:07
这个怎么说呢,关于this,你可以理解为就是操作的这个东西,它指向正在操作的东西,正在操作的东西变了,this就变了~