当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JQuery undelegate()用法及代码示例


jQuery undelegate()method 是一个内置方法,用于从所选元素中删除指定的事件处理程序。

用法:

$(selector).undelegate(selector, event, function)

参数:该方法接受如上所述和如下所述的三个参数:

  • selector:它是一个可选参数,用于指定要从中删除事件的选择器。
  • event:它是一个可选参数,用于指定选择器上事件类型的名称。
  • function:它是一个可选参数,用于指定要删除的处理函数的名称。

以下示例说明了 jQuery 中的 undelegate() 方法:
示例 1:该示例不包含任何参数。

HTML


<!DOCTYPE html>
<html>
<head>
    <title>The undelegate Method</title>
    <script src=
"https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js">
    </script>
    <!-- jQuery code to show the working of this method -->
    <script>
        $(document).ready(function () {
            $("body").delegate("p", "click", function () {
                $(this).css("font-size", "25px");
            });
            $("button").click(function () {
                $("body").undelegate();
            });
        });
    </script>
    <style>
        div {
            width: 300px;
            height: 100px;
            background-color: lightgreen;
            padding: 20px;
            font-weight: bold;
            font-size: 20px;
            border: 2px solid green;
        }
        button {
            margin-top: 10px;
        }
    </style>
</head>
<body>
    <div>
        <!-- click on this p element -->
        <p>Welcome to GeeksforGeeks!.</p>
    </div>
    <!-- click on this button to remove the
        event handler -->
    <button>Remove...!</button>
</body>
</html>

输出:

注意:首先点击按钮,然后点击段落,然后没有发生任何变化。

示例 2:该示例包含所有参数。

HTML


<!DOCTYPE html>
<html>
<head>
    <title>The undelegate Method</title>
    <script src=
"https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js">
    </script>
    <!-- jQuery code to show the working of this method -->
    <script>
        $(document).ready(function () {
            $("body").delegate("div", "click", function () {
                $(this).animate({
                    height: "+=100px"
                });
                $(this).animate({
                    width: "+=100px"
                });
            });
            $("button").click(function () {
                $("body").undelegate("div", "click");
            });
        });
    </script>
    <style>
        div {
            width: 30px;
            height: 30px;
            background-color: green;
        }
        button {
            margin-top: 10px;
        }
    </style>
</head>
<body>
    <div></div>
    <!-- click on this button -->
    <button>Click here..!</button>
</body>
</html>

输出:

注意:如果单击按钮,然后单击 div 元素,则大小不会发生变化。



相关用法


注:本文由纯净天空筛选整理自kundankumarjha大神的英文原创作品 jQuery undelegate() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。