JQuery中this和event.target的区别
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JQuery中this和event.target的区别相关的知识,希望对你有一定的参考价值。
关于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>元素
参考技术A this和event.target的区别:1.js中事件是会冒泡的,所以this是可以变化的,但event.target不会变化,它永远指向触发事件的DOM元素本身;
2.this和event.target都是dom对象,使用jQuey中的方法可以将他们转换为jquery对象:$(this)和$(event.target).
假设htm是<div><span></span></div>
点击span的时候改变span的颜色,使用this的话点击span因为事件冒泡机制,div也会改变颜色,但是使用event.target不会。 参考技术B
this是javascript语言的一个关键字。
this代表函数运行时,自动生成的一个内部对象,只能在函数内部使用。
this和event.target的区别:
1)js中事件是会冒泡的,所以this是可以变化的,但event.target不会变化,它永远是直接接受事件的目标DOM元素;
2)this和event.target都是dom对象,如果要使用jquey中的方法可以将他们转换为jquery对象:$(this)和$(event.target);
this:Javascript语言的一个关键字它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用本回答被提问者采纳 参考技术D 这个怎么说呢,关于this,你可以理解为就是操作的这个东西,它指向正在操作的东西,正在操作的东西变了,this就变了~
而event.target是一个值,你不去给它重新赋值,它就不会变~
jquery 点击tr选中checkbox,解决checkbox的默认点击事件被阻止的问题
1.第一种,!$(event.target).is(‘input‘),判断触发事件的元素是否为input。此时使用event.target,而不是this,获取事件本身,防止触发事件冒泡的问题。
$("#data_table tr").on("click",function (event) { if (!$(event.target).is(‘input‘)) { $(‘input:checkbox‘, this).prop(‘checked‘, function (i, value) { return !value; }); } })
var thisEvent = window.event || event; var targetEvent = thisEvent.srcElement; if (!targetEvent) { targetEvent = thisEvent.target; }
2.第二种,跳过checkbox所在列。本次示例是位于第一列,因此给除第一个td之外的td绑定点击选中事件。
$(".tr_check td").not("td:first-child").bind("click", function () { $(this).parent().find("input:checkbox").prop(‘checked‘, function (i, value) { return !value; }); })
3.event下的部分常用属性或方法:
方法/属性
|
类型
|
作用
|
event.preventDefault()
|
方法
|
阻止默认的事件行为。
|
event.stopPropagation()
|
方法
|
阻止事件的冒泡。
|
event.type
|
属性 |
返回当前触发事件的事件类型。
|
event.target
|
属性
|
获取执行事件【出发事件】的元素。 |
event.relatedTarget
|
属性
|
返回当触发时,该事件所涉及到的其他dom元素。
|
event.pageX/event.pageY
|
属性
|
获取光标相对页面的x坐标和y坐标。 |
event.which
|
属性
|
鼠标单击事件中,获取鼠标的左、中、右键,在键盘事件中获取键盘所在按钮。1 鼠标左键 2 鼠标中键 3 鼠标右键
|
event.originalEvent
|
属性
|
指向原始的事件对象。
|
以上是关于JQuery中this和event.target的区别的主要内容,如果未能解决你的问题,请参考以下文章