You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
1.3 KiB
JavaScript
42 lines
1.3 KiB
JavaScript
// 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;
|
|
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();
|
|
}
|
|
}
|