UNPKG

molstar

Version:

A comprehensive macromolecular library.

23 lines (22 loc) 695 B
/** * Copyright (c) 2018 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author Alexander Rose <alexander.rose@weirdbyte.de> */ var rootPosition = { left: 0, top: 0 }; export function eventOffset(out, ev, target) { var cx = ev.clientX || 0; var cy = ev.clientY || 0; var rect = getBoundingClientOffset(target); out[0] = cx - rect.left; out[1] = cy - rect.top; return out; } function getBoundingClientOffset(element) { if (element instanceof Window || element instanceof Document || element === document.body) { return rootPosition; } else { return element.getBoundingClientRect(); } }