js停止冒泡和阻止浏览器默认行为

停止冒泡通用方法:

function stopBubble(e) {
//如果提供了事件对象,是非IE浏览器
if ( e && e.stopPropagation )
    //使用W3C的stopPropagation()方法
    e.stopPropagation();
else
    //使用IE的cancelBubble = true来取消事件冒泡
    window.event.cancelBubble = true;
}

阻止浏览器默认行为-通用方法

//阻止浏览器的默认行为
function stopDefault( e ) {
    //阻止默认浏览器动作(W3C)
    if ( e && e.preventDefault )
        e.preventDefault();
    //IE中阻止函数器默认动作的方式
    else
        window.event.returnValue = false;
    return false;
}

事件兼容

function myfn(e){ var evt = e ? e:window.event; }

js停止冒泡兼容

window.event? window.event.cancelBubble = true : evt.stopPropagation();

js阻止默认行为兼容

window.event? window.event.returnValue = false : evt.preventDefault();
时间: 2024-11-07 23:45:04

js停止冒泡和阻止浏览器默认行为的相关文章

JavaScript停止冒泡和阻止浏览器默认行为

事件兼容 function myfn(e){ var evt = e ? e:window.event; } js停止冒泡 function myfn(e){ window.event? window.event.cancelBubble = true : e.stopPropagation(); } js阻止默认行为 function myfn(e){ window.event? window.event.returnValue = false : e.preventDefault(); }

IE和其他浏览器中,JavaScript停止冒泡和阻止浏览器默认行为

转载自:http://caibaojian.com/javascript-stoppropagation-preventdefault.html 总结: IE:有window.event对象FF:没有window.event对象. 防止冒泡 w3c的方法是e.stopPropagation(),IE则是使用e.cancelBubble = true window.event? window.event.cancelBubble = true : e.stopPropagation(); 阻止默认

js添加事件、移除事件、阻止冒泡、阻止浏览器默认行为等写法(兼容IE/FF/CHROME)

网上有关这方面的代码比较多而乱,这里整理一下并加以改进. 添加事件 var addEvent = function( obj, type, fn ) { if (obj.addEventListener) obj.addEventListener( type, fn, false ); else if (obj.attachEvent) { obj["e"+type+fn] = fn; obj.attachEvent( "on"+type, function() {

JS 阻止浏览器默认行为和冒泡事件

JS 冒泡事件 首先讲解一下js中preventDefault和stopPropagation两个方法的区别: preventDefault方法的起什么作用呢?我们知道比如<a href="http://www.baidu.com">百度</a>,这是html中最基础的东西,起的作用就是点击百度链接到http://www.baidu.com,这是属于<a>标签的默认行为,而preventDefault方法就是可以阻止它的默认行为的发生而发生其他的事情

JQuery 阻止js事件冒泡 阻止浏览器默认操作

//阻止事件冒泡 event.stopPropagation(); //阻止浏览器默认操作 event.preventDefault(); 代码不一定能执行,写给自己看的. 事件冒泡: 1 <a href="javascript:alert('啦啦啦');"> 2 <ul onclick="alert('德玛西亚');"> 3 <li onclick="alert('大盖伦');"></li> 4

五,事件对象、阻止浏览器默认动作、阻止事件冒泡

在jquery里边: $().bind(‘click’,function(evt){ evt.preventDefault(); evt.stopPropagation(); }); preventDefault()方法是jquery的方法,名字与js底层代码的名字一致而已. 并且其有做浏览器兼容处理(阻止浏览器默认行为) stopPropagation()方法是jquery的方法,名字与js底层代码的名字一致. 其有做浏览器兼容处理(阻止事件冒泡) 解析: $().bind(‘click’,f

理解阻止浏览器默认事件和事件冒泡cancelBubble

一.阻止浏览器默认事件 1.先举个例子说什么是 浏览器的默认事件 : 比如有一个输入框,当我按下字母a,就会在输入框显示字母a.就是浏览器本该发生的事情.小孩子一出生就会汲取母乳一样的道理,这些都是先天,默认好的了. 2.看个demo,阻止浏览器默认的右键弹出菜单,而且弹出自己自定义的菜单.代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <style type=&

js的冒泡和阻止默认行为

stopPropagation 停止冒泡 preventDefault  阻止默认行为 return false 停止冒泡和阻止默认行为. 冒泡的执行顺序是由触发事件的元素往父级元素层层执行. 但是如果当前元素没有阻止默认行为,而父级元素阻止默认行为,那么默认行为也不会触发. 示例代码 <!DOCTYPE html> <html> <head> <title></title> </head> <body> <div

阻止浏览器默认的事件冒泡行为

事实上stoppropagation和cancelBubble的作用是一样的,都是用来阻止浏览器默认的事件冒泡行为. 不同之处在于stoppropagation属于W3C标准,试用于Firefox等浏览器,但是不支持IE浏览器.相反cancelBubble不符合W3C标准,而且只支持IE浏览器.所以很多时候,我们都要结合起来用.不过,cancelBubble在新版本chrome,opera浏览器中已经支持. 语法:e.stopPropagation(); 参数e:表示事件传递的参数,代表事件的状