Browse Source

Up getMouseRelativePos

pull/5463/head
Artur Arseniev 3 years ago
parent
commit
bb6f152588
  1. 24
      src/canvas/index.ts

24
src/canvas/index.ts

@ -470,14 +470,15 @@ export default class CanvasModule extends Module<CanvasConfig> {
* @private * @private
*/ */
getMouseRelativePos(e: any, opts: any = {}) { getMouseRelativePos(e: any, opts: any = {}) {
var addTop = 0; const subWinOffset = opts.subWinOffset;
var addLeft = 0; const doc = e.target.ownerDocument;
var subWinOffset = opts.subWinOffset; const win = doc.defaultView || doc.parentWindow;
var doc = e.target.ownerDocument; const frame = win.frameElement;
var win = doc.defaultView || doc.parentWindow; const yOffset = subWinOffset ? win.pageYOffset : 0;
var frame = win.frameElement; const xOffset = subWinOffset ? win.pageXOffset : 0;
var yOffset = subWinOffset ? win.pageYOffset : 0; const zoomMlt = this.getZoomMultiplier();
var xOffset = subWinOffset ? win.pageXOffset : 0; let addTop = 0;
let addLeft = 0;
if (frame) { if (frame) {
var frameRect = frame.getBoundingClientRect(); var frameRect = frame.getBoundingClientRect();
@ -485,12 +486,9 @@ export default class CanvasModule extends Module<CanvasConfig> {
addLeft = frameRect.left || 0; addLeft = frameRect.left || 0;
} }
const zoom = this.getZoomDecimal();
const zoomOffset = 1 / zoom;
return { return {
y: (e.clientY + addTop - yOffset) * zoomOffset, y: (e.clientY + addTop - yOffset) * zoomMlt,
x: (e.clientX + addLeft - xOffset) * zoomOffset, x: (e.clientX + addLeft - xOffset) * zoomMlt,
}; };
} }

Loading…
Cancel
Save