美文网首页LiYajie web前端
web前端-事件冒泡

web前端-事件冒泡

作者: LiYajie | 来源:发表于2017-03-16 14:59 被阅读18次

    时间冒泡就是说: 当点击子元素的时候, 父元素或者祖先元素如果也绑定了点击事件, 那么父元素或者祖先元素的事件也会触发响应的事件.

    事件传播是从父到子
    事件响应是从子到父
    示例代码如下:

    .fatherfather{
        background-color: #80FF00;
        width: 200px;
        height: 200px;
        padding: 40px;
    }
    .father{
        width: 100px;
        height: 100px;
        background-color: #0094ff;
    }
    
    <div class="fatherfather" id="fatherfather">
        <div class="father" id="father">
            <button id="btn">点击我</button>
        </div>
    </div>
    
    window.onload = function () {
        var fafa = document.getElementById('fatherfather');
        var fa = document.getElementById('father');
        var b = document.getElementById('btn');
    
        fa.onclick = function(){
            console.log("I'm father");
        }
        btn.onclick = function(event){
            var event = event || window.event;
            if (event.stopPropagation) { // 普通浏览器取消事件冒泡
                console.log(1);
                event.stopPropagation();// 阻止事件传播
            } else { // IE 取消时间冒泡
                console.log(2);
                event.cancelBubble = true;// 取消冒泡
            }
            console.log("I'm btn");
        }
        fafa.onclick = function  () {
            console.log('fafa');
        }
        document.onclick = function  () {
            console.log('document');
        }
    }
    

    相关文章

      网友评论

        本文标题:web前端-事件冒泡

        本文链接:https://www.haomeiwen.com/subject/oahjnttx.html