阻止事件冒泡与默认行为

1.既阻止事件冒泡又阻止事件默认行为:

function stopEvent(e){
    //兼容
    var e = e || window.event

    if(e.preventDefault){

        e.preventDefault();
        e.stopPropagation();

    }else {

        e.returnValue = false;
        e.cancelBubble = true;
        return false;

    }
}

2.仅阻止事件冒泡:

function stopBubble(e){

    var e = e || window.event;

    if (e.stopPropagation) {

        e.stopPropagation();

    }else {

        e.cancelBubble = true;

    }
}

3.仅阻止事件默认行为

function stopDefault(e){

    var e = e || window.event;

    if (e.preventDefault) {

        e.preventDefault();

    }else {

        e.returnValue= false;
        return false;

    }
}
时间: 2024-10-13 23:52:34

阻止事件冒泡与默认行为的相关文章

javascript阻止事件冒泡及默认事件方式

//阻止事件冒泡 function stopBubble(e){ if(e&&e.stopPropagation){//非IE e.stopPropagation(); } else{//IE window.event.cancelBubble=true; } } //阻止默认事件 function stopDefault(e) { //阻止默认浏览器动作(W3C) if ( e && e.preventDefault ){ e.preventDefault(); }els

阻止事件冒泡和默认行为,禁止键盘事件

阻止事件冒泡: function(e){ e = e || window.event; if (e.stopPropagation) e.stopPropagation(); else e.cancelBubble = true; } 取消事件默认行为: function(e) { e = e || window.event; if(e.preventDefault) e.preventDefault(); else e.returnValue = false; } 阻止键盘输入 elem.on

js 阻止事件冒泡和默认行为 preventDefault、stopPropagation、return false

preventDefault: preventDefault它是事件对象(Event)的一个方法,作用是取消一个目标元素的默认行为.既然是说默认行为,当然是元素必须有默认行为才能被取消,如果元素本身就没有默认行为,调用当然就无效了.什么元素有默认行为呢?如链接<a>,提交按钮<input type=”submit”>等.当Event对象的cancelable为false时,表示没有默认行为,这时即使有默认行为,调用 preventDefault也是不会起作用的. 我们都知道,链接&

vue.js阻止事件冒泡和默认事件

首先我们来看原生JS取消事件冒泡方法: e.stopPropagation(); //非IE浏览器window.event.cancelBubble = true; //IE浏览器 原生JS阻止默认事件方法: e.preventDefault(); //非IE浏览器window.event.returnValue = false; //IE浏览器 而vue.js给我们提供了更简便的方法,我们可以通过function($event)来获取事件对象,$event.target则是选择发生事件的目标元

javascript如何阻止事件冒泡和默认行为

阻止冒泡:  冒泡简单的举例来说,儿子知道了一个秘密消息,它告诉了爸爸,爸爸知道了又告诉了爷爷,一级级传递从而以引起事件的混乱,而阻止冒泡就是不让儿子告诉爸爸,爸爸自然不会告诉爷爷.下面的demo 就是很好的例子 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css&quo

阻止事件冒泡和默认到事件对象在不同浏览器中的传递

今天群里有一个同学发了一个问题,问题起因是他定义了一个drag函数,然后函数内部使用了e进行组织默认实践,结果在360浏览器正常运行但是火狐却报错,e不存在,第一时间有点懵,组织冒泡和组织默认一般都用,那里需要那里用,一般不会出现这种问题.因为新手才有这种操作,但是引发我兴趣,经过一番测试,我发现在360里面时间默认进行了传递,所以在360可以正常运行,但是在火狐里面没有进行传递.然后我传递参数为事件对象进去,执行成功,然后引发了我对几个浏览器不同引擎的猜测和测验.首先上代码, <!DOCTYP

阻止事件冒泡,阻止默认事件,event.stopPropagation()和event.preventDefault(),return false的区别

今天来看看前端的冒泡和事件默认事件如何处理 1.event.stopPropagation()方法 这是阻止事件的冒泡方法,不让事件向documen上蔓延,但是默认事件任然会执行,当你掉用这个方法的时候,如果点击一个连接,这个连接仍然会被打开, 2.event.preventDefault()方法 这是阻止默认事件的方法,调用此方法是,连接不会被打开,但是会发生冒泡,冒泡会传递到上一层的父元素: 3.return false  : 这个方法比较暴力,他会同事阻止事件冒泡也会阻止默认事件:写上此代

阻止事件冒泡 和 阻止事件默认行为

1.event.stopPropagation()方法 这是阻止事件的冒泡方法,不让事件向documen上蔓延,但是默认事件任然会执行,当你掉用这个方法的时候,如果点击一个连接,这个连接仍然会被打开, 2.event.preventDefault()方法 这是阻止默认事件的方法,调用此方法是,连接不会被打开,但是会发生冒泡,冒泡会传递到上一层的父元素: 3.return false  : 这个方法比较暴力,他会同事阻止事件冒泡也会阻止默认事件:写上此代码,连接不会被打开,事件也不会传递到上一层的

##阻止事件冒泡和取消默认操作

取消事件冒泡 事件冒泡指当一个元素的事件被触发的时候,比如鼠标点击了一个按钮,同样的事件将会在那个元素的所有祖先元素中被触发,这个过程被称为事件冒泡.这个事件是从原始元素开始一直冒泡到DOM树的最上层.事件传播的3个阶段:捕获.冒泡.目标阶段. 阻止事件冒泡:w3c的方法是event.stopPropagation(),IE则是使用event.cancelBubble = true; 兼容性写法: var event = event || window.event; if(event &&