中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

jQuery阻止事件冒泡實例分析

發布時間:2020-09-25 23:15:21 來源:腳本之家 閱讀:143 作者:CangoWu 欄目:web開發

本文實例講述了jQuery阻止事件冒泡。分享給大家供大家參考,具體如下:

我們在平時的開發過程中,肯定會遇到在一個div(這個div可以是元素)包裹一個div的情況,但是呢,在這兩個div上都添加了事件,如果點擊里面的div我們希望處理這個div的事件,但是呢,我們不希望外層的div的事件也執行,這時候我們就要用到阻止冒泡。

通俗點來說吧,你在家里看電視,躲在自己的小房間,但是你不希望聲音傳到隔壁父母的耳朵里,這時候,你可能躲在被窩里,或者墻壁的隔音效果很好,阻隔聲音可以理解為阻止冒泡。

阻止事件冒泡的三種手段

1、return false:可以阻止默認事件和冒泡事件

2、event.stopPropagation/IE下event.cancelBubble  = true;:可以阻止冒泡事件但是允許默認事件

3、event.preventDefault();/IE下event.returnValue = false:可以阻止默認事件但是允許冒泡事件

上面的三種方法運用在不同的場景,可以合理運用,下面是代碼,可以自己做一些測試:

<!DOCTYPE html>
<html>
<head lang="en">
  <meta charset="UTF-8">
  <title>jQuery阻止冒泡</title>
  <style>
    .div1{
      width: 140px;
      border: 1px solid blue;
    }
    .div2{
      width: 100px;
      height: 100px;
      margin: 20px;
      border: 1px solid red;
    }
  </style>
</head>
<body>
<div class="div1">
  <div class="div2">
    點我呀!!!!
  </div>
</div>
<a href="http:www.baidu.com" rel="external nofollow" id="a1">百度</a>
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<script>
  $('.div1').bind('click',function(){
    alert("div1");
  });
  $('.div2').bind('click',function(){
    alert("div2");
//    return false;//也可以通過return false 阻止冒泡
    if(window.event){//IE下阻止冒泡
      event.cancelBubble = true;
    }else{
      event.stopPropagation();
    }
  });
  $('#a1').bind('click',function(){
    if(window.event){//IE下阻止默認事件
      event.returnValue = false;
    }else{
      event.preventDefault();
    }
    alert("我是鏈接");
    //return false;//如果不添加任何阻止事件,先彈框,后跳轉,我們可以通過return false阻止跳轉
  });
</script>
</body>
</html>

使用在線HTML/CSS/JavaScript代碼運行工具 http://tools.jb51.net/code/HtmlJsRun測試運行效果如下:

jQuery阻止事件冒泡實例分析

更多關于jQuery相關內容感興趣的讀者可查看本站專題:《jQuery常見事件用法與技巧總結》、《jQuery常用插件及用法總結》、《jQuery操作json數據技巧匯總》、《jQuery擴展技巧總結》、《jQuery常見經典特效匯總》及《jquery選擇器用法總結》

希望本文所述對大家jQuery程序設計有所幫助。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

鄂温| 玉山县| 南和县| 红桥区| 洪泽县| 洪江市| 成都市| 东乡| 精河县| 普兰店市| 灵丘县| 邮箱| 南江县| 甘洛县| 沽源县| 新和县| 武定县| 两当县| 清远市| 沅江市| 博白县| 沁阳市| 桓台县| 牙克石市| 平泉县| 新龙县| 龙江县| 曲麻莱县| 惠安县| 常宁市| 南华县| 北票市| 龙口市| 临泉县| 开鲁县| 杭锦后旗| 密山市| 鹿泉市| 嘉峪关市| 靖边县| 淮滨县|