27 lines
758 B
JavaScript
27 lines
758 B
JavaScript
"use strict";
|
|
|
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
|
|
exports.__esModule = true;
|
|
exports.default = offsetParent;
|
|
|
|
var _ownerDocument = _interopRequireDefault(require("../ownerDocument"));
|
|
|
|
var _style = _interopRequireDefault(require("../style"));
|
|
|
|
function nodeName(node) {
|
|
return node.nodeName && node.nodeName.toLowerCase();
|
|
}
|
|
|
|
function offsetParent(node) {
|
|
var doc = (0, _ownerDocument.default)(node),
|
|
offsetParent = node && node.offsetParent;
|
|
|
|
while (offsetParent && nodeName(node) !== 'html' && (0, _style.default)(offsetParent, 'position') === 'static') {
|
|
offsetParent = offsetParent.offsetParent;
|
|
}
|
|
|
|
return offsetParent || doc.documentElement;
|
|
}
|
|
|
|
module.exports = exports["default"]; |