去除事件的方法:1、用unbind(),語(yǔ)法“綁定了鼠標(biāo)事件的元素.unbind()”;2、用undelegate(),語(yǔ)法“綁定了鼠標(biāo)事件的元素.undelegate();”;3、用off(),語(yǔ)法“綁定了鼠標(biāo)事件的元素.off()”。
本教程操作環(huán)境:windows7系統(tǒng)、jquery1.10.2版本、Dell G3電腦。
jquery去除鼠標(biāo)事件的方法:
方法1:使用unbind() 方法
unbind() 方法移除被選元素的事件處理程序。
該方法能夠移除所有的或被選的事件處理程序,或者當(dāng)事件發(fā)生時(shí)終止指定函數(shù)的運(yùn)行。
ubind() 適用于任何通過(guò) jQuery 附加的事件處理程序。
示例:
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <script src="js/jquery-1.10.2.min.js"></script> <script type="text/javascript"> $(document).ready(function() { $("p").click(function() { $(this).slideToggle(); }); $("button").click(function() { $("p").unbind(); }); }); </script> </head> <body> <p>這是一個(gè)段落。</p> <p>這是另一個(gè)段落。</p> <p>點(diǎn)擊任何段落可以令其消失。包括本段落。</p> <button>刪除 p 元素的事件處理器</button> </body> </html>
方法2:使用undelegate() 方法
undelegate() 方法刪除由 delegate() 方法添加的一個(gè)或多個(gè)事件處理程序。
示例:
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <script src="js/jquery-1.10.2.min.js"></script> <script type="text/javascript"> $(document).ready(function() { $("body").delegate("p", "click", function() { $(this).slideToggle(); }); $("button").click(function() { $("body").undelegate(); }); }); </script> </head> <body> <p>這是一個(gè)段落。</p> <p>這是另一個(gè)段落。</p> <p>點(diǎn)擊任何段落可以令其消失。包括本段落。</p> <button>刪除點(diǎn)擊事件</button> </body> </html>
方法3:使用off() 方法
off() 方法通常用于移除通過(guò) on() 方法添加的事件處理程序。
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <script src="js/jquery-1.10.2.min.js"></script> <script> $(document).ready(function() { $("p").on("click", function() { $(this).css("background-color", "pink"); }); $("button").click(function() { $("p").off(); }); }); </script> </head> <body> <p>點(diǎn)擊這個(gè)段落修改它的背景顏色。</p> <p>點(diǎn)擊一下按鈕再點(diǎn)擊這個(gè)段落( click 事件被移除 )。</p> <button>移除 click 事件</button> </body> </html>
注:自 jQuery 版本 1.7 起,off() 方法是 unbind()、die() 和 undelegate() 方法的新的替代品。該方法給 API 帶來(lái)很多便利,我們推薦使用該方法,它簡(jiǎn)化了 jQuery 代碼庫(kù)。
【推薦學(xué)習(xí):jQuery視頻教程、web前端視頻】