最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

在點擊div中的p時,如何阻止事件冒泡

 更新時間:2017年02月07日 10:35:15   作者:九九smile  
本文主要介紹了在點擊div中的p時,如何阻止事件冒泡的方法,具有很好的參考價值,下面跟著小編一起來看下吧

今天整理筆記,發(fā)現(xiàn)在學習javaScript的過程中,遇到過一個在當時看來很棘手的問題,現(xiàn)在特地總結(jié)一下,也希望能幫助到曾像我一樣迷惘的初學者。

我還是以一個案例來說明問題,html代碼如下:

 <div onclick="show('a')">
   <p onclick="show('b')"></p>
 </div>

css代碼如下:

div{
  width:500px;
  height:500px;
  background:red;
 }
 p{
  width:200px;
  height:200px;
  background:blue;
 }

js代碼如下:

 function show(info){
    alert(info);
 }

稍微懂點js的人都知道當我點擊p時,基于事件冒泡機制,會觸發(fā)父元素div的onclick事件,結(jié)果是先彈出b、再彈出a。

那么問題來了,如何修改show()這個函數(shù)而只彈出b?我第一次的解決方法是(各位大神勿噴):

function show(e,info){
 function cancelBubble(e){
  e = e || window.event;
  if (e.stopPropagation) {  
     e.stopPropagation(); 
  }else {   
     e.cancelBubble = true; 
  } 
 }
 alert(info);
}

結(jié)果老是報錯。我就開始各種百度,最終解決方法如下:

function show(info){
   alert(info);
   cancelBubble();
}
function cancelBubble(e) { 
   var evt = e ? e : window.event; 
    if (evt.stopPropagation) {  //W3C 
     evt.stopPropagation(); 
    }else {  //IE  
     evt.cancelBubble = true; 
    } 
}

至于為什么這樣?我分析的是這樣做有兩個好處:1.阻止了事件冒泡,達到只彈出b目的; 2.將阻止事件冒泡的代碼封裝成了一個函數(shù),可以多次調(diào)用。

好了,問題圓滿解決。

以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!

相關(guān)文章

  • JavaScript中Number對象的toFixed() 方法詳解

    JavaScript中Number對象的toFixed() 方法詳解

    下面小編就為大家?guī)硪黄狫avaScript中Number對象的toFixed() 方法詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-09-09
  • JS/jquery實現(xiàn)一個網(wǎng)頁內(nèi)同時調(diào)用多個倒計時的方法

    JS/jquery實現(xiàn)一個網(wǎng)頁內(nèi)同時調(diào)用多個倒計時的方法

    這篇文章主要介紹了JS/jquery實現(xiàn)一個網(wǎng)頁內(nèi)同時調(diào)用多個倒計時的方法,涉及js與jQuery基于定時器的時間相關(guān)操作技巧,需要的朋友可以參考下
    2017-04-04
  • BootStrap Table對前臺頁面表格的支持實例講解

    BootStrap Table對前臺頁面表格的支持實例講解

    bootstrap-table是在bootstrap的基礎(chǔ)上面做了一些封裝,所以在使用bootstrap-table之前要導(dǎo)入的js和css,下面通過本文給大家詳細介紹需要引入的文件,對bootstrap table 表格感興趣的朋友一起看看吧
    2016-12-12
  • js實現(xiàn)一鍵復(fù)制功能

    js實現(xiàn)一鍵復(fù)制功能

    本文主要介紹了js實現(xiàn)一鍵復(fù)制功能的方法,具有很好的參考價值。下面跟著小編一起來看下吧
    2017-03-03
  • JavaScript實現(xiàn)模塊拖拽功能的代碼示例

    JavaScript實現(xiàn)模塊拖拽功能的代碼示例

    這篇文章將給大家詳細介紹一下JavaScript實現(xiàn)模塊的拖拽功能的代碼示例,文中有詳細的實現(xiàn)步驟,需要的朋友可以參考下
    2023-07-07
  • ionic2懶加載配置詳解

    ionic2懶加載配置詳解

    本篇文章主要介紹了ionic2懶加載配置詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • nestjs實現(xiàn)圖形校驗和單點登錄的示例代碼

    nestjs實現(xiàn)圖形校驗和單點登錄的示例代碼

    本文主要介紹了nestjs實現(xiàn)圖形校驗和單點登錄的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-05-05
  • 理解javascript定時器中的setTimeout與setInterval

    理解javascript定時器中的setTimeout與setInterval

    這篇文章主要幫助大家學習理解javascript定時器中的setTimeout與setInterval,從實例出發(fā)進行深入探討,感興趣的小伙伴們可以參考一下
    2016-02-02
  • preact組件案例的使用詳解

    preact組件案例的使用詳解

    SelectValue是一個Preact組件,用于創(chuàng)建一個下拉選擇框,它接收props如value、setfn、options和disabled,用于更新父組件中的值、處理下拉選擇框的值改變事件、顯示選項和禁用或啟用下拉選擇框,本文介紹preact組件案例的使用詳解,感興趣的朋友一起看看吧
    2025-03-03
  • javascript內(nèi)置對象Math案例總結(jié)分析

    javascript內(nèi)置對象Math案例總結(jié)分析

    今天總結(jié)一下javascript 內(nèi)置對象Math中的函數(shù)用法,順帶寫一下常見的案例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-03-03

最新評論

张掖市| 治多县| 中西区| 武鸣县| 勐海县| 彭阳县| 漠河县| 泾阳县| 武宁县| 万全县| 灵武市| 桃源县| 贵州省| 淮安市| 塔城市| 绿春县| 静海县| 永修县| 大邑县| 玛纳斯县| 凤冈县| 兴城市| 石阡县| 乳源| 凤台县| 甘孜县| 望谟县| 县级市| 峡江县| 松阳县| 萍乡市| 山西省| 龙海市| 萨迦县| 阳春市| 崇义县| 赤城县| 灵台县| 金乡县| 东丽区| 额尔古纳市|