Skip to content
Snippets Groups Projects
Commit 63de0a58 authored by Adrian Lang's avatar Adrian Lang
Browse files

Fix pageX and pageY in IE’s JS events

parent 1410ed4b
No related branches found
No related tags found
No related merge requests found
......@@ -50,8 +50,8 @@ var drag = {
this.oX = parseInt(this.obj.style.left);
this.oY = parseInt(this.obj.style.top);
this.eX = drag.evX(e);
this.eY = drag.evY(e);
this.eX = e.pageX;
this.eY = e.pageY;
var _this = this;
this.mousehandlers = [function (e) {return _this.drag(e);}, function (e) {return _this.stop(e);}];
......@@ -80,23 +80,9 @@ var drag = {
*/
drag: function(e) {
if(this.obj) {
this.obj.style.top = (this.evY(e)+this.oY-this.eY+'px');
this.obj.style.left = (this.evX(e)+this.oX-this.eX+'px');
this.obj.style.top = (e.pageY+this.oY-this.eY+'px');
this.obj.style.left = (e.pageX+this.oX-this.eX+'px');
}
},
/**
* Returns the X position of the given event.
*/
evX: function(e){
return (e.pageX) ? e.pageX : e.clientX + document.body.scrollTop; //fixme shouldn't this be scrollLeft?
},
/**
* Returns the Y position of the given event.
*/
evY: function(e){
return (e.pageY) ? e.pageY : e.clientY + document.body.scrollTop;
}
};
......@@ -55,6 +55,10 @@ function fixEvent(event) {
event.stopPropagation = fixEvent.stopPropagation;
// fix target
event.target = event.srcElement;
// fix coords
event.pageX = (typeof event.pageX !== 'undefined') ? event.pageX : event.clientX + document.body.scrollTop;
event.pageY = (typeof event.pageY !== 'undefined') ? event.pageY : event.clientY + document.body.scrollTop;
return event;
};
fixEvent.preventDefault = function() {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment