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);
    }

//移动端禁止页面下拉

document.addEventListener('touchmove', function (e) { e.preventDefault(); }, false);

</script>

</body>

</html>
原文地址:https://www.cnblogs.com/xiaobaibubai/p/8117032.html