zoukankan      html  css  js  c++  java
  • 跨浏览器的事件处理程序

    <!doctype html>
    <html lang="en">
    <head>
    <meta charset="utf-8">
    <title> Document </title>
    
    </head>
    <body>
        <a href='#' id='btn'>button</a>
    </body>
    </html>
    <script>
    var EventUtil = {
        //添加事件
        addHandler:function(element, type, handler){
            if(element.addEventListener){
                element.addEventListener(type, handler, false);            //标准
            }else if(element.attachEvent){
                element.attachEvent('on'+type, handler);                //IE
            }else{
                element['on'+type] = handler;
            }
        },
        //获取事件对象
        getEvent:function(event){
            return event ? event : window.event;
        },
        //事件目标
        getTarget:function(event){
            return event.target || event.srcElement;
        },
        //阻止默认事件
        preventDefault:function(event){
            if(event.preventDefault){
                event.preventDefault();
            }else{
                event.returnValue = false;
            }
        },
        //阻止冒泡
        stopPropagation:function(event){
            if(event.stopPropagation){
                event.stopPropagation();
            }else{
                event.cancelBubble = true;
            }
        },
        //移除绑定
        removeHandler:function(element, type, handler){
            if(element.removeEventListener){
                element.removeEventListener(type, handler, false);        //标准
            }else if(element.detachEvent){
                element.detachEvent('on'+type, handler);                //IE
            }else{
                element['on'+type] = null;
            }
        }
    }
    
    function fn(ev){
        var e = EventUtil.getEvent(ev);
        //alert(EventUtil.getTarget(e));
        //EventUtil.stopPropagation(e);
        EventUtil.preventDefault(e);
    }
    
    EventUtil.addHandler(document.getElementById('btn'), 'click', fn);
    //EventUtil.removeHandler(document.getElementById('btn'), 'click', fn);
    
    
    document.onclick = function(){
        alert(123);
    }
    </script>
  • 相关阅读:
    解题报告:hdu1008 Elvator
    解题报告:hdu1003 Max Sum
    解题报告:hdu 1005 number subsequent
    矩阵快速幂
    初步
    学习笔记:矩阵的基本运算的实现
    解题报告:hdu1284 钱币兑换问题
    解题报告:hdu2191汶川地震
    解题报告:hdu1248寒冰王座
    解题报告:hdu2602 Bone collector 01背包模板
  • 原文地址:https://www.cnblogs.com/ayguo/p/3762902.html
Copyright © 2011-2022 走看看