js 停止事件冒泡和阻止浏览器默认事件


1>阻止冒泡事件

    var el = window.document.getElementById("a");
    el.onclick = function (e) {
        //如果提供了事件对象,则这是一个非IE浏览器
        if (e && e.stopPropagation) {
            //因此它支持W3C的stopPropagation()方法
            e.stopPropagation();
        }
        else {
            //否则,我们需要使用IE的方式来取消事件冒泡 
            window.event.cancelBubble = true;
            return false;
        }
    }

 

2>阻止默认事件

    var el = window.document.getElementById("a");
    el.onclick = function (e) {
        //如果提供了事件对象,则这是一个非IE浏览器
        if (e && e.preventDefault) {
            //阻止默认浏览器动作(W3C) 
            e.preventDefault();
        }
        else {
            //IE中阻止函数器默认动作的方式 
            window.event.returnValue = false;
            return false;
        }
    }

 

 3>jQeury阻止默认和冒泡事件

阻止冒泡事件

            $("a").click(function (e) {
                e.stopPropagation();
            });

阻止默认事件

            $("a").click(function (e) {
                e.preventDefault();
            });

阻止默认和冒泡事件

            $("a").click(function (e) {
                return false;
            });

 

程序员的基础教程:菜鸟程序员


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM