JQuery移除事件

时间:2021-10-13 08:13:21

移除事件

unbind(type [,data])     //data是要移除的函数

$('#btn').unbind("click"); //移除click

$('#btn').unbind(); //移除所有 
    对于只需要触发一次的,随后就要立即解除绑定的情况,用one()

$('#btn').one("click",function(){.......}); 
    模拟操作

可以用trigger()方法完成模拟操作。

$('#btn').trigger("click"); 
    $('#btn').click();

触发自定义事件

$('#btn').bind("myclick",function(){....});

$('#btn').trigger("myclick"); 
    传递数据

trigger(type [,data])

$('#btn').bind("myclick",function(event,message1,message2){...........});

$('#btn').trigger("myclick",["传给message1","传给message2"]);

执行默认操作 
    $("input").trigger("focus");

//不仅会触发input元素绑定的focus事件,还会触发默认操作——得到焦点。

$("input").triggerHandler("focus");

//只触发绑定事件,不执行浏览器默认操作

其他用法

绑定多个事件类型

$("div").bind("mouseover mouseout",function(){.....});

添加事件命名空间

$("div").bind("click.plugin",function(){......});

在所绑定的世界类型后面添加命名空间,这样在删除事件时只需要指定命名空间即可。

$("div").unbind(".plugin");   //删除空间内的事件

$("div").trigger("click!"); //触发所以不包含在命名空间中的click方法

如果包含在命名空间的也要触发:

$("div").trigger("click");