UNPKG

emulate-key-in-browser

Version:
35 lines (34 loc) 1.31 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.emulateMouse = void 0; var emulateMouse; (function (emulateMouse) { emulateMouse.hover = triggerMouseover; })(emulateMouse = exports.emulateMouse || (exports.emulateMouse = {})); function triggerMouseover(element) { var offsetBox = getOffsetBox(element); var clientX = offsetBox.left + Math.floor(offsetBox.width / 2); var clientY = offsetBox.top + Math.floor(offsetBox.height / 2); return element.dispatchEvent(new MouseEvent('mouseover', { clientX: clientX, clientY: clientY, button: 0, buttons: 0 })); } function getOffsetBox(element) { var pos = getOffsetPosition(element); var left = pos.left; var top = pos.top; var width = element.offsetWidth; var height = element.offsetHeight; var right = left + width; var bottom = top + height; return { top: top, right: right, bottom: bottom, left: left, width: width, height: height }; } function getOffsetPosition(element) { var left = element.offsetLeft; var top = element.offsetTop; var parent = element.offsetParent; if (parent instanceof HTMLElement) { var parentPos = getOffsetPosition(parent); left += parentPos.left; top += parentPos.top; } return { left: left, top: top }; }