/
sweetebin
/
hackaton_26
Обзор
Документация
Войти
/
sweetebin
/
hackaton_26
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
web-form-project/node_modules/dom-helpers/cjs/offset.js
42 строки
1 KB
AKorostelev
web form project added
28 июл 2026, 10:57
28 июл 2026, 10:57
4339e77
Код
Авторство
О чём код?
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = offset; var _contains = _interopRequireDefault(require("./contains")); var _ownerDocument = _interopRequireDefault(require("./ownerDocument")); var _scrollLeft = _interopRequireDefault(require("./scrollLeft")); var _scrollTop = _interopRequireDefault(require("./scrollTop")); /** * Returns the offset of a given element, including top and left positions, width and height. * * @param node the element */ function offset(node) { var doc = (0, _ownerDocument.default)(node); var box = { top: 0, left: 0, height: 0, width: 0 }; var docElem = doc && doc.documentElement; // Make sure it's not a disconnected DOM node if (!docElem || !(0, _contains.default)(docElem, node)) return box; if (node.getBoundingClientRect !== undefined) box = node.getBoundingClientRect(); box = { top: box.top + (0, _scrollTop.default)(docElem) - (docElem.clientTop || 0), left: box.left + (0, _scrollLeft.default)(docElem) - (docElem.clientLeft || 0), width: box.width, height: box.height }; return box; } module.exports = exports["default"];