diff --git a/dist/js/moobile.js b/dist/js/moobile.js index 5fd8a467..7549f892 100644 --- a/dist/js/moobile.js +++ b/dist/js/moobile.js @@ -7758,8 +7758,9 @@ Element.defineCustomEvent('tap', { condition: function(e) { if (tapValid) { - - var element = tapTouch ? document.elementFromPoint(tapTouch.pageX - window.scrollX, tapTouch.pageY - window.scrollY) : null; + var offsetX = window.scrollX === undefined ? window.pageXOffset : window.scrollX, + offsetY = window.scrollY === undefined ? window.pageYOffset : window.scrollY, + element = tapTouch ? document.elementFromPoint(tapTouch.pageX - offsetX, tapTouch.pageY - offsetY) : null; if (element) { return this === element || this.contains(element); } diff --git a/dist/js/moobile.min.js b/dist/js/moobile.min.js index df6429b7..a829d6d2 100644 --- a/dist/js/moobile.min.js +++ b/dist/js/moobile.min.js @@ -84,7 +84,7 @@ "use strict";var onReady=function(){window.fireEvent("ready")};Element.defineCustomEvent("ready",{onSetup:function(){return Browser.platform.cordova?void document.onListener("deviceready",onReady):void window.addEvent("domready",onReady)},onTeardown:function(){return Browser.platform.cordova?void document.offListener("deviceready",onReady):void window.removeEvent("domready",onReady)}}),window.addEvent("ready",function(){parent&&parent.fireEvent&&parent.fireEvent("appready")}); },{}],28:[function(require,module,exports){ -"use strict";var tapValid=!0,tapTouch=null,onTapTouchStart=function(t){tapTouch=t.changedTouches[0],tapValid=!0},onTapTouchCancel=function(t){tapValid=!1};Element.defineCustomEvent("tap",{base:"touchend",condition:function(t){if(tapValid){var n=tapTouch?document.elementFromPoint(tapTouch.pageX-window.scrollX,tapTouch.pageY-window.scrollY):null;return n?this===n||this.contains(n):!1}return tapValid},onSetup:function(){this.addEvent("touchcancel",onTapTouchCancel),this.addEvent("touchstart",onTapTouchStart)},onTeardown:function(){this.removeEvent("touchcancel",onTapTouchCancel),this.removeEvent("touchstart",onTapTouchStart)}}),Element.defineCustomEvent("tapstart",{base:"touchstart",condition:function(t){return 1===t.touches.length}}),Element.defineCustomEvent("tapmove",{base:"touchmove",condition:function(t){return 1===t.touches.length}}),Element.defineCustomEvent("tapend",{base:"touchend",condition:function(t){return 0===t.touches.length}}),Element.defineCustomEvent("tapcancel",{base:"touchcancel"}); +"use strict";var tapValid=!0,tapTouch=null,onTapTouchStart=function(t){tapTouch=t.changedTouches[0],tapValid=!0},onTapTouchCancel=function(t){tapValid=!1};Element.defineCustomEvent("tap",{base:"touchend",condition:function(t){if(tapValid){var n=void 0===window.scrollX?window.pageXOffset:window.scrollX,e=void 0===window.scrollY?window.pageYOffset:window.scrollY,o=tapTouch?document.elementFromPoint(tapTouch.pageX-n,tapTouch.pageY-e):null;return o?this===o||this.contains(o):!1}return tapValid},onSetup:function(){this.addEvent("touchcancel",onTapTouchCancel),this.addEvent("touchstart",onTapTouchStart)},onTeardown:function(){this.removeEvent("touchcancel",onTapTouchCancel),this.removeEvent("touchstart",onTapTouchStart)}}),Element.defineCustomEvent("tapstart",{base:"touchstart",condition:function(t){return 1===t.touches.length}}),Element.defineCustomEvent("tapmove",{base:"touchmove",condition:function(t){return 1===t.touches.length}}),Element.defineCustomEvent("tapend",{base:"touchend",condition:function(t){return 0===t.touches.length}}),Element.defineCustomEvent("tapcancel",{base:"touchcancel"}); },{}],29:[function(require,module,exports){ (function (global){ diff --git a/src/event/tap.js b/src/event/tap.js index 362d1781..cf98a005 100644 --- a/src/event/tap.js +++ b/src/event/tap.js @@ -19,8 +19,9 @@ Element.defineCustomEvent('tap', { condition: function(e) { if (tapValid) { - - var element = tapTouch ? document.elementFromPoint(tapTouch.pageX - window.scrollX, tapTouch.pageY - window.scrollY) : null; + var offsetX = window.scrollX === undefined ? window.pageXOffset : window.scrollX, + offsetY = window.scrollY === undefined ? window.pageYOffset : window.scrollY, + element = tapTouch ? document.elementFromPoint(tapTouch.pageX - offsetX, tapTouch.pageY - offsetY) : null; if (element) { return this === element || this.contains(element); }