在jquery中,可以使用unbind()方法来解除元素的所有事件,语法为“$(selector).unbind();”。unbind()方法能够移除元素上绑定的所有事件处理程序,或指定事件处理程序;当该方法没规定参数时,即可移除所有事件。
本教程操作环境:windows7系统、jquery1.10.2版本、Dell G3电脑。
在jquery中,可以使用unbind()方法来解除元素的所有事件。
unbind() 方法移除被选元素的事件处理程序。
该方法能够移除所有的或被选的事件处理程序,或者当事件发生时终止指定函数的运行。
$(selector).unbind(event,function,eventObj)
参数 | 描述 |
---|---|
event | 可选。规定一个或多个要从元素上移除的事件。 由空格分隔多个事件值。 如果只规定了该参数,则会删除绑定到指定事件的所有函数。 |
function | 可选。规定从元素上指定事件取消绑定的函数名称。 |
eventObj | 可选。规定要使用的移除的 event 对象。这个 eventObj 参数来自事件绑定函数。 |
该方法也可以通过 event 对象取消绑定的事件处理程序。该方法也用于对自身内部的事件取消绑定(比如当事件已被触发一定次数之后,删除事件处理程序)。
当unbind()方法未规定参数时,会删除指定元素的所有事件处理程序。
示例:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="js/jquery-1.10.2.min.js"></script> <script> $(document).ready(function() { $("p").click(function() { $(this).slideToggle(); }); $("p").hover(function() { $(this).css("color","red"); }); $("button").click(function() { $("p").unbind(); }); }); </script> </head> <body> <p>这是一个段落。</p> <p>鼠标移入任意段落(p 元素),该段落字体颜色会变红。</p> <p>点击任意段落(p 元素),该段落就会消失。</p> <button>移除所有段落(p 元素)的事件句柄</button> </body> </html>
可以看到,上例中将鼠标点击事件和移入事件都取消了
【推荐学习:jQuery视频教程、web前端视频】