jquery移除、绑定、触发元素事件使用示例详解

内容摘要
复制代码 代码如下:unbind(type [,data]) //data是要移除的函数$('#btn').unbind("click"); //移除click$('#btn').unbind(); //移除所有
对于只需要触发一次的,随后就要
文章正文

复制代码 代码如下:

unbind(type [,data])     //data是要移除的函数
$('#btn').unbind("click"); //移除click
$('#btn').unbind(); //移除所有

对于只需要触发一次的,随后就要立即解除绑定的情况,用one()

复制代码 代码如下:

$('#btn').one("click",function(){.......});

触发操作
trigger() 方法触发被选元素的指定事件类型。

复制代码 代码如下:

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

也可以直接执行事件

复制代码 代码如下:

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

触发自定义事件
bind() 方法为被选元素添加一个或多个事件处理程序,并规定事件发生时运行的函数。

复制代码 代码如下:

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

模拟触发上面的绑定函数

复制代码 代码如下:

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

传递数据trigger(event,[param1,param2,...])

复制代码 代码如下:

$('#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”);

取消或者绑定函数

复制代码 代码如下:

$('div').bind('click', RecommandProduct);//为div绑定RecommandProduct 函数
$('div').unbind('click', RecommandProduct);//取消RecommandProduct 函数


代码注释

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!