亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

深入分析js的冒泡事件

 更新時(shí)間:2014年12月05日 10:13:38   投稿:hebedich  
本文通過幾段示例代碼,給我們深入分析了下javascript的冒泡事件,非常的詳細(xì),這里推薦給大家,希望對(duì)大家有所幫助

在javascript的dom操作做肯定會(huì)遇到j(luò)s的冒泡事件,最常見的是div彈窗事件如圖解

當(dāng)點(diǎn)擊灰色部分是彈窗消失,點(diǎn)擊黑色部分時(shí)沒有效果。

通過下面一段代碼來分析js的冒泡事件

html代碼:

復(fù)制代碼 代碼如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>js冒泡事件</title>
    <link rel="stylesheet" href="style.css">
</head>
<body>
    <div class="container">
        <h1>js冒泡事件分析</h1>
        <hr>
        <div class="box bg-gray">
            <button class="btn">
                Click me !
            </button>
        </div>
    </div>
    <script>
    var box=document.querySelector(".box"),
    btn=document.querySelector(".btn");
    box.onclick=function(event){
        alert("我是div");
    }
    btn.onclick=function(event){
        alert("我是button");
    }
    </script>
</body>
</html>

使用firefox瀏覽器的默認(rèn)開發(fā)者工具的3d視圖可以清晰的看出div層的先后順序

圖解:

當(dāng)點(diǎn)擊按鈕時(shí)會(huì)彈出“我是button”再?gòu)棾觥拔沂莇iv”,因?yàn)橄扔|發(fā)按鈕事件之后觸發(fā)下一層div點(diǎn)擊事件,

事件的觸發(fā)是先進(jìn)先出原則。

圖解:

那么有些時(shí)候我們并不想多個(gè)事件的觸發(fā)而導(dǎo)致沖突,所以event有stopPropagation();方法來阻止冒泡

還有一個(gè)event的方法也是比較常用的比如一個(gè)鏈接,點(diǎn)擊鏈接時(shí)我不想跳轉(zhuǎn),則使用event.preventDefault();方法

實(shí)例代碼如下

復(fù)制代碼 代碼如下:

小伙伴們是否能夠全面理解js的冒泡事件了呢,有疑問就給我留言吧

相關(guān)文章

最新評(píng)論