zoukankan      html  css  js  c++  java
  • js事件跨浏览器处理方案

    js跨浏览器事件工具:

    //事件工具对象

    var EventUtil = {};

    //添加事件

    EventUtil.addEvent = function(element,type,handle) {

         if(element.addEventListener) { //dom事件

               element.addEventListener(type,handle,false);

         }

        else if(element.attachEvent) {

               element.attachEvent("on" + type,handle);

        }

        else {

               element["on" + type] = handle;

         }

    }

    //删除事件

    EventUtil.removeEvent = function(element,type,handle) {

         if(element.removeEventListener) { //dom事件

               element.removeEventListener(type,handle,false);

         }

        else if(element.detachEvent) {

               element.detachEvent("on" + type,handle);

        }

        else {

               element["on" + type] = handle;

         }

    }

    //得到event

    EventUtil.getEvent = function(event) {

         return event?event:window.event;

    }

    //得到当前事件拥有对象

    EventUtil.getTarget = function(event) {

        return event.targert || event.srcElement;

    }

    //阻止浏览器默认事件

    EventUtil.preventDefault = function(event) {

        if(event.preventDefault) {

            event.preventDefault();

        }

       else {

        event.returnValue = false;

       }

    }

    //阻止事件捕获或冒泡

     EventUtil.stopPropagation = function(event) {

         if(event.stopPropagation) {

              event.stopPropagation();

         }

         else {

             event.cancelBubble = false;

        }

  • 相关阅读:
    备战考研算法笔记(四)快速排序
    VMware安装
    使用 Vagrant 打造跨平台开发环境
    类加载器,注解,动态代理
    IE兼容forEach/map/every/some等新方法
    不得不看的Java代码性能优化总结
    关于Oracle误操作--数据被Commit后的数据回退(闪回)
    JPA与Hibernate的关系
    Jenkins-GitHub-Gradle自动构建项目
    过滤器Filter
  • 原文地址:https://www.cnblogs.com/ai3xiaoyi/p/3972869.html
Copyright © 2011-2022 走看看