jQuery 觸發的事件序列是什麼?


jQuery 事件處理程式始終按繫結的順序執行。使用 jQuery,你還可以更改序列。我們來看看,例如,從

demo(1);
demo(2);

我們可以將序列更改為 −

demo(2);
demo(1);

示例

你可以嘗試執行以下操作以瞭解並更改 jQuery 事件的序列 −

線上演示

<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $.fn.bindFirst = function(name, fn) {

        this.on(name, fn);
        this.each(function() {
            var handlers = $._data(this, 'events')[name.split('.')[0]];
            var handler = handlers.pop();
            handlers.splice(0, 0, handler);
        });
    };

    $("div").click(function() { alert("1"); });
    $("div").click(function() { alert("2"); });
    $("div").click(function() { alert("3"); });
    $("div").click(function() { alert("4"); });  
    $("div").bindFirst('click', function() { alert("5"); });

});
</script>
</head>
<style>    
.demo {
    cursor: pointer;
    border: 3px solid #FF0000;    
}
</style>
<body>

<h1>Heading 1</h1>
<div class="demo">
Click here for sequence.<br>
The sequence will be: 5, 1, 2, 3, 4
</div>

</body>
</html>

更新於:2020 年 2 月 14 日

835 次瀏覽

開啟你的職業

完成課程以獲得認證

開始
廣告