zoukankan      html  css  js  c++  java
  • JavaScript事件

    关于JavaScript事件讲解得很全面的一篇文章:http://www.cnblogs.com/tugenhua0707/p/4501843.html

    如下代码需要注意的一点是,除了getEvent方法外,其他方法在被调用时传给它的事件参数应该是兼容浏览器的事件参数,所以可先调用getEvent获得兼容性参数再传进去,或者先 event=event||window.event再传进去

     1 var EventUtil = {
     2     addHandler: function(element,type,handler) {
     3         if(element.addEventListener) {
     4             element.addEventListener(type,handler,false);
     5         }else if(element.attachEvent) {
     6             element.attachEvent("on"+type,handler);
     7         }else {
     8             element["on" +type] = handler;
     9         }
    10     },
    11     removeHandler: function(element,type,handler){
    12         if(element.removeEventListener) {
    13             element.removeEventListener(type,handler,false);
    14         }else if(element.detachEvent) {
    15             element.detachEvent("on"+type,handler);
    16         }else {
    17             element["on" +type] = null;
    18         }
    19     },
    20     getEvent: function(event) {
    21         return event ? event : window.event;
    22     },
    23     getTarget: function(event) {
    24         return event.target || event.srcElement;
    25     },
    26     preventDefault: function(event){
    27         if(event.preventDefault) {
    28             event.preventDefault();
    29         }else {
    30             event.returnValue = false;
    31         }
    32     },
    33     stopPropagation: function(event) {
    34         if(event.stopPropagation) {
    35             event.stopPropagation();
    36         }else {
    37             event.cancelBubble = true;
    38         }
    39     },
    40     getRelatedTarget: function(event){
    41         if (event.relatedTarget){
    42             return event.relatedTarget;
    43         } else if (event.toElement){
    44             return event.toElement;
    45         } else if (event.fromElement){
    46             return event.fromElement;
    47         } else {
    48             return null;
    49         }
    50     },
    51     getWheelDelta: function(event) {
    52         if(event.wheelDelta) {
    53             return event.wheelDelta;
    54         }else {
    55             return -event.detail * 40
    56         }
    57     },
    58     getCharCode: function(event) {
    59         if(typeof event.charCode == 'number') {
    60             return event.charCode;
    61         }else {
    62             return event.keyCode;
    63         }
    64     }
    65 };
  • 相关阅读:
    消息中间件(一)MQ详解及四大MQ比较
    WebSocket 详解教程
    Nginx 简易教程
    排序七 归并排序
    排序五 简单选择排序
    排序四 希尔排序
    排序二 快速排序
    排序一 冒泡排序
    [算法题] 人民币大小写转换(阿拉伯数字和汉字转换)
    Linux编程 18 安装软件程序(yum工具对软件包安装,删除,更新介绍)
  • 原文地址:https://www.cnblogs.com/z-sm/p/4508122.html
Copyright © 2011-2022 走看看