Skip to content

Instantly share code, notes, and snippets.

@wwsun
Created May 13, 2015 02:15
Show Gist options
  • Select an option

  • Save wwsun/8fb8b975c3262ef267ce to your computer and use it in GitHub Desktop.

Select an option

Save wwsun/8fb8b975c3262ef267ce to your computer and use it in GitHub Desktop.

Revisions

  1. wwsun created this gist May 13, 2015.
    48 changes: 48 additions & 0 deletions EventUtil.js
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,48 @@

    var EventUtil = {

    addHandler: function (element, type, handler) {
    if (element.addEventListener) { // DOM2
    element.addEventListener(type, handler, false); // false means handle the events when bubbling
    } else if (element.attachEvent) { // IE
    element.attachEvent("on" + type, handler);
    } else { // DOM0
    element["on" + type] = handler;
    }
    },

    removeHandler: function (element, type, handler) {

    if (element.removeEventListener) { // DOM 2
    element.removeEventListener(type, handler, false);
    } else if (element.detachEvent) { // IE
    element.detachEvent("on" + type, handler);
    } else { // DOM 0
    element["on" + type] = null;
    }
    },

    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;
    }
    }
    };