當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。