js阻止冒泡和默认事件

Posted 小白不白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js阻止冒泡和默认事件相关的知识,希望对你有一定的参考价值。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>阻止冒泡和默认事件</title>
</head>
<body>

<button>阻止冒泡和默认事件</button>

<script>
    function stopPropagation(e) {
        if (e && e.stopPropagation) {
            console.log(1);
            e.stopPropagation();//阻止冒泡非ie8及以下版本

        } else {
            console.log(2);
            window.event.cancelBubble = true;//阻止冒泡ieie8及以下版本
        }

        if (e && e.preventDefault ) {
            console.log(3);
            e.preventDefault();//阻止默认非ie8及以下版本

        } else {
            console.log(4);
            window.event.returnValue = false;//阻止默认ie8及以下版本
        }


    }

    var btn=document.getElementsByTagName("button")[0];
    btn.onclick= function (e) {
        alert(111);
        stopPropagation(e);
    };
    document.onclick= function () {
        alert(222);
    }

</script>
</body>
</html>

 

以上是关于js阻止冒泡和默认事件的主要内容,如果未能解决你的问题,请参考以下文章

js阻止浏览器元素的默认事件与js阻止事件冒泡阻止事件流

右键、阻止冒泡

js中阻止冒泡与默认事件

js函数中 如何阻止事件冒泡

js 阻止冒泡 阻止默认事件

js 停止事件冒泡 阻止浏览器的默认行为(阻止超连接 #)