No need for cross browser handling here.
This commit is contained in:
+12
-5
@@ -3,24 +3,28 @@ goog.provide('ol.event.drag');
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @return {Object} A drag sequence with dragstart, drag and dragend events.
|
* @return {Object} A drag sequence with dragstart, drag and dragend events.
|
||||||
|
* @export
|
||||||
*/
|
*/
|
||||||
ol.event.drag = function() {
|
ol.event.drag = function() {
|
||||||
var previous = null;
|
var previous = null;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {Event} evt
|
||||||
|
*/
|
||||||
function dragstart(evt) {
|
function dragstart(evt) {
|
||||||
if (!previous) {
|
if (!previous) {
|
||||||
evt.dx = 0;
|
evt.dx = 0;
|
||||||
evt.dy = 0;
|
evt.dy = 0;
|
||||||
previous = {screenX: evt.screenX, screenY: evt.screenY};
|
previous = {screenX: evt.screenX, screenY: evt.screenY};
|
||||||
if (evt.stopPropagation) {
|
// don't start a drag sequence on other elements.
|
||||||
evt.stopPropagation();
|
evt.stopPropagation();
|
||||||
} else {
|
|
||||||
evt.cancelBubble = true;
|
|
||||||
}
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {Event} evt
|
||||||
|
*/
|
||||||
function drag(evt) {
|
function drag(evt) {
|
||||||
if (previous) {
|
if (previous) {
|
||||||
evt.dx = evt.screenX - previous.screenX;
|
evt.dx = evt.screenX - previous.screenX;
|
||||||
@@ -30,6 +34,9 @@ ol.event.drag = function() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {Event} evt
|
||||||
|
*/
|
||||||
function dragend(evt) {
|
function dragend(evt) {
|
||||||
if (previous) {
|
if (previous) {
|
||||||
previous = null;
|
previous = null;
|
||||||
|
|||||||
Reference in New Issue
Block a user