//  dw_event.js version date Apr 2008//  basic event handling file from dyn-web.comvar dw_Event = {      add: function(obj, etype, fp, cap) {        cap = cap || false;        if (obj.addEventListener) obj.addEventListener(etype, fp, cap);        else if (obj.attachEvent) obj.attachEvent("on" + etype, fp);    },     remove: function(obj, etype, fp, cap) {        cap = cap || false;        if (obj.removeEventListener) obj.removeEventListener(etype, fp, cap);        else if (obj.detachEvent) obj.detachEvent("on" + etype, fp);    },         DOMit: function(e) {         e = e? e: window.event; // e IS passed when using attachEvent though ...        if (!e.target) e.target = e.srcElement;        // don't seem to work if not using attachEvent (moral: be consistent, use old OR new models)        if (!e.preventDefault) e.preventDefault = function () { e.returnValue = false; return false; }        if (!e.stopPropagation) e.stopPropagation = function () { e.cancelBubble = true; }        return e;    },        getTarget: function(e) {        e = dw_Event.DOMit(e); var tgt = e.target;         if (tgt.nodeType != 1) tgt = tgt.parentNode; // safari...        return tgt;    }    }// Danny Goodman's version (DHTML def ref)function addLoadEvent(func) {    var oldQueue = window.onload? window.onload: function() {};    window.onload = function() {        oldQueue();        func();    }}
