import * as THREE from '../lib/three.module.js' let common = { handelPadding: (function() { //去除player左边和上面的宽高,因为pc的player左上有其他element 许钟文 var pads = new Map() //记录下来避免反复计算 return function(x, y, domE) { let pad let padInfo = pads.get(domE) if (padInfo) { if (domE.clientWidth == padInfo.width && domE.clientHeight == padInfo.height) { pad = padInfo.pad } } if (!pad) { pad = { x: this.getOffset('left', domE), y: this.getOffset('top', domE) } pads.set(domE, { width: domE.clientWidth, height: domE.clientHeight, pad }) } return { x: x - pad.x, y: y - pad.y } } })(), getOffset: function(type, element, parent) { //获取元素的边距 许钟文 var offset = type == 'left' ? element.offsetLeft : element.offsetTop if (!parent) parent = document.body while ((element = element.offsetParent)) { if (element == parent) break offset += type == 'left' ? element.offsetLeft : element.offsetTop } return offset } } export default common