我們如何設定 jQuery 事件的優先順序?


要設定 jQuery 事件的優先順序,請使用 event.stopPropagation()。

示例

你可以嘗試執行以下程式碼來了解如何使用 stopPropogation() 方法設定優先順序。

真實演示

<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
   
   var timer;
   function out(s) {
      if (timer) {
        clearTimeout(timer);
        timer = null;
      }
      $("#demo").append(s + "<br>");
      timer = setTimeout(function() {
        $("#demo").append("-------" + "<br>");
        timer = null;
      }, 100);
   }

   $(".li").find('input').click(function(e){
    out('li>input');
    if ($(this).parent().hasClass("stop")) {
        e.stopPropagation();
    }
   });

   $(".li").click(function(e){
    out('li');
   });

   $('input').click(function(e){
    out('input');
    if ($(this).parent().hasClass("stop")) {
        e.stopPropagation();
    }
   });
});
</script>
</head>
<body>

<ul>
<li class="li"><input type="checkbox" /><span>Demo</span></li>
<li class="li stop"><input type="checkbox" /><span>Demo using stop propagation method</span></li>
</ul>
<div id="demo"></div>
</body>
</html>

更新於:2019 年 12 月 11 日

872 次瀏覽

開啟你的 事業

完成課程獲得認證

立即開始
廣告