如何使用 jQuery 移除事件处理程序?


一旦建立了事件处理程序,它将在页面的剩余生命周期中继续有效。您可能需要移除事件处理程序。

jQuery 提供了 unbind() 命令来移除一个退出的事件处理程序。unbind() 的语法如下。

以下是参数的描述 −

  • eventType − 包含 JavaScript 事件类型的字符串,比如 click 或 submit。有关事件类型的完整列表,请参阅下一节。
  • handler − 如果提供,则标识要移除的特定监听器。

示例

您可以尝试运行以下代码,以了解如何使用 jQuery 移除事件处理程序 −

在线演示

<html>

   <head>
      <title>jQuery Unbind</title>
      <script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
       
      <script>
         $(document).ready(function() {

            function aClick() {
               $("div").show().fadeOut("slow");
            }
               
            $("#bind").click(function () {
               $("#theone").click(aClick).text("Can Click!");
            });
               
            $("#unbind").click(function () {
               $("#theone").unbind('click', aClick).text("Does nothing...");
            });
               
         });
      </script>
       
      <style>
         button {
            margin:5px;
         }
         button#theone {
             color:red;
             background:yellow;
         }
      </style>
   </head>
   
   <body>
   
      <button id = "theone">Does nothing...</button>
      <button id = "bind">Bind Click</button>
      <button id = "unbind">Unbind Click</button>
       
      <div style = "display:none;">Click!</div>
       
   </body>
   
</html>

更新于: 2020 年 2 月 14 日

993 次浏览

开启您的 事业

完成课程获得认证

立即开始
广告