zoukankan      html  css  js  c++  java
  • 跨浏览器的 事件监听器、停止事件冒泡、阻止事件默认行为

      一.跨浏览器的事件监听器

      二.跨浏览器的停止事件冒泡

      三.跨浏览器的阻止事件默认行为

      一.跨浏览器的事件监听器

        /**
            * 跨域的 浏览器 事件监听器
            * IE中没有addEventListener()方法,从IE5开始提供与之等效的attachEvent()方法;
            * 对于更早期的版本,只能通过属性方法(onclick属性)来解决问题。 eventType为事件类型
           */
        if(window.addEventListener){
            //第三个参数为false时,是冒泡事件监听器;为true时,是捕获事件监听器。
            window.addEventListener(eventType,callback,false);
        }else if(window.attachEvent){ 
            //IE8及以下版本
            window.attachEvent("on"+eventType,callback);
        }else{
            //IE5以下版本 document.onclick = callback;
            document["on"+eventType] = callback; 
        }  
        function callback(evt){
               //prep work
               evt = evt || window.evt;
               var target = evt.target || evt.srcElement;
               //work......
               console.log(target.nodeName);
        }

      二.跨浏览器的停止事件冒泡

       /**
         *跨浏览器的    停止事件冒泡
         */
        function someHandle(event) {
            event = event || window.event;
            if(event.stopPropagation){
                event.stopPropagation();
            }else {
                event.cancelBubble = true;
            }
        }

      三.跨浏览器的阻止事件默认行为

        /**
         *跨浏览器的    阻止事件默认行为
         */
        function someHandle(event) {
            event = event || window.event;
            if(event.preventDefault){
                event.preventDefault();
            }else{
                event.returnValue = false;
            }
        }
  • 相关阅读:
    单片机4*4按键数码管显示0-9
    netbeans设置语言
    单片机中断的应用
    Linux 命令总结
    vc6.0快捷键大全
    怎么使PUTTY一直连接
    mysql alter 效率
    treeview
    Gitbook
    linux 进程监控软件 supervisor
  • 原文地址:https://www.cnblogs.com/snowcan/p/6706325.html
Copyright © 2011-2022 走看看