zoukankan      html  css  js  c++  java
  • 阻止冒泡和取消默认事件(默认行为)

    1.阻止冒泡 

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

           当Event 对象的 cancelable为false时,表示没有默认行为,这时即使有默认行为,调用preventDefault也是不会起作用

    2.取消默认事件(默认行为)

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

      w3c的方法是e.preventDefault(),IE则是使用e.returnValue = false;

    3.return false

    jq 下:既阻止默认行为又停止冒泡  return false

    js 原生: 阻止默认行为 不会停止冒泡

  • 相关阅读:
    elipse图标注解
    Thrift源码解析--transport
    IDL和生成代码分析
    thrift概述
    less分页阅读
    this与super使用总结(java)
    more分页阅读
    Arrays
    Teigha克隆db的blockTableRecord里面的一个实体
    Teigha的BlockTableRecord获取方法
  • 原文地址:https://www.cnblogs.com/zhouhongdan/p/12665108.html
Copyright © 2011-2022 走看看