This repository has been archived on 2024-07-27. You can view files and clone it, but cannot push or open issues or pull requests.
keksAccountGUI/node_modulesOLD/vuetify/lib/services/goto/util.js

43 lines
1.1 KiB
JavaScript
Raw Permalink Normal View History

2019-08-11 18:48:02 +00:00
// Return target's cumulative offset from the top
export function getOffset(target) {
if (typeof target === 'number') {
return target;
}
let el = $(target);
if (!el) {
throw typeof target === 'string' ? new Error(`Target element "${target}" not found.`) : new TypeError(`Target must be a Number/Selector/HTMLElement/VueComponent, received ${type(target)} instead.`);
}
let totalOffset = 0;
while (el) {
totalOffset += el.offsetTop;
el = el.offsetParent;
}
return totalOffset;
}
export function getContainer(container) {
const el = $(container);
if (el) return el;
throw typeof container === 'string' ? new Error(`Container element "${container}" not found.`) : new TypeError(`Container must be a Selector/HTMLElement/VueComponent, received ${type(container)} instead.`);
}
function type(el) {
return el == null ? el : el.constructor.name;
}
function $(el) {
if (typeof el === 'string') {
return document.querySelector(el);
} else if (el && el._isVue) {
return el.$el;
} else if (el instanceof HTMLElement) {
return el;
} else {
return null;
}
}
//# sourceMappingURL=util.js.map