event-base-ie-debug.js revision 466e89e60fbad15b099068ee771d408bc06f14c1
(function() {
var stateChangeListener,
EVENT_NAME = 'onreadystatechange',
GLOBAL_ENV._ieready = function() {
GLOBAL_ENV._ready();
};
// Internet Explorer: use the doScroll() method on the root element.
// This isolates what appears to be a safe moment to manipulate the
// DOM prior to when the document's readyState suggests it is safe to do so.
stateChangeListener = function() {
}
};
} else {
try {
GLOBAL_ENV._dri = null;
} catch (domNotReady) { }
}, pollInterval);
}
}
})();
/*
* Custom event engine, DOM event listener abstraction layer, synthetic DOM
* events.
* @module event
* @submodule event-base
*/
var IEEventFacade = function() {
// IEEventFacade.superclass.constructor.apply(this, arguments);
};
init: function() {
var e = this._event,
x, y, d, b, de, t;
if (('clientX' in e) && (!x) && (0 !== x)) {
x = e.clientX;
y = e.clientY;
b = d.body;
de = d.documentElement;
this.pageX = x;
this.pageY = y;
}
if (e.type == "mouseout") {
t = e.toElement;
} else if (e.type == "mouseover") {
t = e.fromElement;
}
this.relatedTarget = resolve(t);
// which should contain the unicode key code if this is a key event
// if (e.charCode) {
// this.which = e.charCode;
// }
// for click events, which is normalized for which mouse button was
// clicked.
if (e.button) {
switch (e.button) {
case 2:
this.which = 3;
break;
case 4:
this.which = 2;
break;
default:
}
}
},
stopPropagation: function() {
var e = this._event;
e.cancelBubble = true;
this.stopped = 1;
},
stopImmediatePropagation: function() {
this.stopPropagation();
this.stopped = 2;
},
preventDefault: function(returnValue) {
this.prevented = 1;
}
});
}
}, '@VERSION@' );