阻止冒泡


【只有子標簽和父標簽有相同的事件A時,子標簽使用阻止冒泡,父盒子的事件A才會失效】

【教學視頻】阻止冒泡案例:

理解什么是冒泡:如果一個大盒子box包裹着一個小盒子small,small里在包裹一個button,如果我給與大盒子box
一個事件,那么點擊small或者button都會觸發大盒子事件,因為他倆都屬於大盒子。如果你再給button一個事件,
那么當你點擊button時會觸發該button的事件,然后還會觸發大盒子box的事件。這就是冒泡。
只要孩子和父親有相同的事件,當觸發該事件時就會一層一層向上冒。阻止冒泡事件的方式【具有兼容性】:
標准【Propargation傳播的意思】:event.stopPropargation()  ie678:event.cancelBubble = true;
 
         
         
        

冒泡:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<button id="btn">點擊</button>
</body>
</html>
<script>
    var btn = document.getElementById("btn");
    document.onclick = function () {
        alert("你點擊了空白處");
    }
    btn.onclick = function () {
        alert("你點擊了button");
    }
</script>

 阻止冒泡兼容性檢測:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<button id="btn">點擊</button>
</body>
</html>
<script>
    var btn = document.getElementById("btn");
    document.onclick = function () {
        alert("你點擊了空白處");
    }
    btn.onclick = function (event) {
        var event = event || window.event;
        if(event && event.stopPropagation) {
            event.stopPropagation();    // W3C標准
        }else {
            event.cancelBubble = true;  //ie678
        }
        alert("你點擊了button");
    }
</script>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM