• 跨浏览器的事件对象


    在前端开发工作中,由于浏览器兼容性等问题,触发事件对象的方法不同,分为IE和非IE两种。下面主要介绍跨浏览器触发 目标事件阻止事件的默认行为阻止事件冒泡 三种方法:

    var EventUtil = {
            target : function(e){    //目标事件
                e = e || window.event;
                return  e.target || e.srcElement;
            },
            preventDefault : function(e){    //阻止事件的默认行为
                e = e || window.event;
                if(e.preventDefault){
                    e.preventDefault();
                }else{
                    e.returnValue = false;
                }
            },
            stopPropagation : function(e){    //阻止事件冒泡
                e = e || window.event;
                if(e.stopPropagation){
                    e.stopPropagation();
                }else{
                    e.cancelBubble = true;
                }
            },

          charCode : function(e){ //取得字符编码
            e = e || window.event;
            return e.keyCode || e.charCode;
          }

        };

    以上代码,我们为EventUtil添加了3个方法,我们可以像下面这样使用这些方法:

    var div=document.getElementById('div');
    div.onclick
    = function(e){
    var target = EventUtil.target(e); alert(target.tagName); }

      document.onkeydown=function(e){
        var code=EventUtil.charCode(e);
        console.log(code); //按键盘上的键 看效果
      }

     
  • 相关阅读:
    static 和final
    Integer中getInteger(),valueof()
    Integer和String "+""=="方法的不同
    java中Integer常量池
    用jvm指令分析String 常量池
    多线程、线程安全
    String字符串缓冲区、StringBuffer
    TCP通信---文件上传案例、多线程文件上传
    网络通信协议、UDP通信、TCP通信
    Java线程-- 线程池
  • 原文地址:https://www.cnblogs.com/duanhuajian/p/2961199.html
Copyright © 2020-2023  润新知