jQuery 事件 isDefaultPrevented() 方法



jQuery 的 event.isDefaultPrevented() 方法用於檢查是否在該事件物件上呼叫了 event.preventDefault() 方法。它允許您確定是否使用 preventDefault() 方法阻止了事件的預設操作。

如果呼叫了 event.preventDefault() 方法,則此方法返回布林值“true”;否則,它返回“false”。

語法

以下是 jQuery event.isDefaultPrevented() 方法的語法:

event.isDefaultPrevented()

引數

此方法不接受任何引數。

返回值

如果已呼叫 'preventDefault()' 方法,則此方法返回 'true' 值;否則,它將返回 'false'。

示例 1

以下程式演示了 jQuery event.isDefaultPrevented() 方法的使用:

<!DOCTYPE html>
<html>
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
</head>
<body>
    <p>Click to check whether the preventDefault() method was called or not.</p>
    <button>Click to check</button>
    <script>
        $('button').click(function(event) {
            event.preventDefault();
            if(event.isDefaultPrevented){
                alert("Does the preventDefault() method was called? " + event.isDefaultPrevented());
            }
        });
    </script>
</body>
</html>

輸出

以上程式顯示了一個按鈕,當點選按鈕時,會彈出一個提示框並返回 'true':


示例 2

如果在事件物件中未使用 preventDefault() 方法,它將返回 'false':

<!DOCTYPE html>
<html>
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
</head>
<body>
    <p>Click to check whether the preventDefault() method was called or not.</p>
    <button>Click to check</button><br><br>
    <span></span>
    <script>
        $('button').click(function(event) {
            if(event.isDefaultPrevented){
                $('span').text("Does the preventDefault() method was called? " + event.isDefaultPrevented());
                $('span').css("color", "green");
            }
        });
    </script>
</body>
</html>

輸出

執行程式後,將出現一個按鈕。當單擊按鈕時,它將顯示“false”,如下所示:


當用戶單擊按鈕時:


示例 3

阻止連結重定向。

在下面的示例中,首先,我們將檢查是否尚未使用 preventDefault() 方法來阻止連結。如果尚未使用,當用戶單擊按鈕時,我們將呼叫此方法以阻止連結重定向:

<!DOCTYPE html>
<html>
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
</head>
<body>
    <p>Click on the below link to redirect to another page</p>
    <a href="https://tutorialspoint.tw/index.htm">Tutorialspoint</a>
    <br><span></span>
    <p>Click on the below button to prevent redirection</p>
    <button>Prevent the above link from redirect</button>
    <script>
        $('button').click(function(event){
          if(event.isDefaultPrevented){
            event.preventDefault();
            $('a').removeAttr('href');
          }
        });
    </script>
</body>
</html>

輸出

以上程式顯示一個連結和一個按鈕,當用戶點選連結時會重定向到另一個頁面,而點選按鈕則會阻止連結重定向:


jquery_ref_events.htm
廣告