jQuery|event的属性和方法

jQuery事件对象event的属性和方法

事件处理(事件对象、目标元素的获取,事件对象的属性、方法等)在不同浏览器之间存在差异,jQuery在遵循W3C规范的情况下做了封装统一

事件对象常用的属性:

event.type:获取事件的类型,触发元素的事件类型

$("a").click(function(event) {
alert(event.type); // "click"事件
});

event.pageX 和 event.pageY:获取鼠标当前相对于页面的坐标,可以确定元素在当前页面的坐标值,是以页面为参考点,不随滑动条移动而变化

$("a").click(function(event) {
alert("Current mouse position: " + event.pageX + ", " + event.pageY );
return false;
});

event.target:获取触发事件的元素

this和event.target的区别:

js中事件是会冒泡的,所以this是可以变化的,但event.target不会变化,它永远是直接接受事件的目标DOM元素;

this和event.target都是dom对象,可以转换为jquery对象:$(this)和$(event.target)

$("a[href=http://www.baidu.com]").click(function(event) {
alert(event.target.href);
return false;
});

event.which:获取在鼠标单击事件中鼠标的左、中、右键(左键1,中间键2,右键3),在键盘事件中键盘的键码值

$("a").mousedown(function(e){
alert(e.which);
return false;
})
event.currentTarget : 获取冒泡前的当前触发事件的DOM对象, 等同于this

事件对象常用的方法:

event.preventDefault() :

阻止默认行为,可以用 event.isDefaultPrevented() 来确定preventDefault是否被调用过了

event.stopPropagation() :

阻止事件冒泡,事件是可以冒泡的,为防止事件冒泡到DOM树上,不触发任何前辈元素上的事件处理函数,可以用 event.isPropagationStopped() 来确定stopPropagation是否被调用过了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值