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


JQuery undelegate()用法及代码示例


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

用法:

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

参数:此方法接受上述和以下所述的三个参数:


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

返回值:此方法返回通过undelegate()方法进行指定更改的所选元素。

以下示例说明了jQuery中的undelegate()方法:

示例1:本示例不包含任何参数。

<!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:本示例包含所有参数。

<!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元素后,调整大小。

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



相关用法


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