1.在jQuery 中提供了stopPropagation () 方法来停止 事件冒泡。
2.在jQuery 中提供了preventDefault () 方法来阻止元素的默认行为。如:单击超链接后会跳转、单击“提交"按钮后会提交表单等等。
如果想同时对事件对象停止冒泡和默认行为,可以在事件处理中返回false。这是对在事件对象上同时调用stopPrapagation()方法和preventDefault()方法的一种简写形式。
event.type() 方法 作用是可以获取到事件的类型。如:
$("a").click(function(event){
alert(event.type);
return false;
}); 运行后返回”click“
event.target() 作用是获取到触发事件的元素。如:
$("a[href=http://baidu.com]").click(function(event){
alert(event.target.href);
return false;
}); 运行后返回”http://baidu.com"
event.pageX() 和event.pageY() 作用是获取到光标相对于页面的x坐标和y 坐标。
event.which() 作用是在鼠标 单击中获取到鼠标的左、中、右键;在键盘事件中获取键盘的按键。
如:$(function(){
$("body").mousedown(function(e){
alert(e.which); //1=鼠标左键 2=鼠标中键 3=鼠标右键
});
});
event.metaKey() 为键盘事件中获取<ctrl>按键。
移除元素上以前注册的事件:unbind() 。 语法结构:unbind([type] [,data] ); 其中第1个参数是事件类型,第2个参数是将要移除的函数。如:
$(function(){
$("#btn").bind("click", myFun1 =function(){
$("#test").append("<p>我的绑定函数1</p>");
}).bind("click", myFun2 =function(){
$("#test").append("<p>我的绑定函数2</p>");
}).bind("click", myFun3 =function(){
$("#test").append("<p>我的绑定函数3</p>");
});
}); 可以通过如下方法单独删除某个事件:
$("delTwo").click(function(){
$("#btn").unbind("click",myFun2); //删除 “绑定函数2”
});
当有些事件只需触发一次,随后就要立即解除的情况 ,jQuery 提供了一种简写的方法:one() :one ( type, [data] , fn);