Jquery事件对象的属性
平常时候老是写各种事件,但是从来没注意过function里面那个event参数问题,每次用到都是直接去百度,这回弄个event各个属性的集合,以后要用了就直接来这里找吧。
1、event.type
作用:获取事件的类型,譬如获取click事件的type,会返回click。
例子:
$("a").click(function(event){ alert(event.type);//获取事件类型 return false;//阻止链接跳转 });
结果:click
2、event.preventDefault
作用:阻止默认的事件行为。譬如:submit点击之后默认会自动提交表单,即便校验没有通过也会提交,因此可以用preventDefault来阻止表单提交,通常在事件冒泡的时候用得比较多。
3、event.stopPropagation
作用:阻止事件的冒泡。
如果想同时对事件停止冒泡和默认行为,可以在事件处理函数中返回false。这是对在事件上同时调用stopPropagation和preventDefault的一种简写方式。
4、event.target
作用:获取到触发事件的元素。譬如点击某个有href的a标签,就可以用event.target.href获取href的值。
例子:
$("a[href=http://www.bai.com]").click(function(event){ alert(event.target.href);//获取触发事件的<a>元素的href属性值 return false;//阻止链接跳转 });
结果:http://www.baidu.com
5、event.relatedTarget
在标准DOM中,mouseover和mouseout所发生的元素可以通过event.target来访问,相关元素是通过event.relateTarget来访问的。event.relateTarget在mouseover中相当于IE浏览器的event.fromElement,在mouseout中相当于IE的event.toElement。Jquery的event.relatedTarget进行了封装,可以很好的兼容各种浏览器。
6、event.pageX和event.pageY
作用:获取光标相对于页面的x坐标和y坐标。同样的效果,在IE中用的是event.x和evnet.y方法,在火狐里面则是event.pageX和event.pageY。如果页面上有滚动条,还需要加上滚动条的高度或宽度。在IE里面还应该减去默认的2px的边框。
7、evnet.which
作用:在鼠标单击事件中获取到鼠标的左、中、右键,在键盘事件获取到键盘的按键。
例子:
$(function(){ $("body").mousedown(function(event){ alert(event.which);//1-左键 2-中键 3-右键 }); });
8、event.metaKey
作用:针对不同浏览器对键盘中的ctrl键解释不同,jQuery进行了封装,并规定event.metaKey为键盘事件中获取ctrl按键。
9、evnet.originalEvent
作用:指向原始的事件对象。