3 Star 54 Fork 14

Yaohaixiao / dom.js

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
_getElementSizes.js 1.87 KB
一键复制 编辑 原始数据 按行查看 历史
import isElement from './utils/types/isElement'
import pixel from './pixel'
import getStyle from './getStyle'
import offset from './offset'
/**
* 获取 DOM 节点的相关尺寸信息,返回相关尺寸数据的对象。
* ========================================================================
* @method _getElementSizes
* @param {HTMLElement} el
* @return {Object|null}
* @private
*/
const _getElementSizes = (el) => {
let marginTop
let marginBottom
let marginLeft
let marginRight
let borderTop
let borderBottom
let borderLeft
let borderRight
let paddingTop
let paddingBottom
let paddingLeft
let paddingRight
let offsetSize
let offsetHeight
let offsetWidth
let rect
if (!isElement(el)) {
return null
}
marginTop = pixel(getStyle(el, 'margin-top'))
marginBottom = pixel(getStyle(el, 'margin-bottom'))
marginLeft = pixel(getStyle(el, 'margin-left'))
marginRight = pixel(getStyle(el, 'margin-right'))
borderTop = pixel(getStyle(el, 'border-top-width'))
borderBottom = pixel(getStyle(el, 'border-bottom-width'))
borderLeft = pixel(getStyle(el, 'border-left-width'))
borderRight = pixel(getStyle(el, 'border-right-width'))
paddingTop = pixel(getStyle(el, 'padding-top'))
paddingBottom = pixel(getStyle(el, 'padding-bottom'))
paddingLeft = pixel(getStyle(el, 'padding-left'))
paddingRight = pixel(getStyle(el, 'padding-right'))
offsetSize = offset(el)
offsetHeight = offsetSize.height
offsetWidth = offsetSize.width
rect = el.getBoundingClientRect()
return {
marginTop,
marginBottom,
marginLeft,
marginRight,
borderTop,
borderBottom,
borderLeft,
borderRight,
paddingTop,
paddingBottom,
paddingLeft,
paddingRight,
offsetHeight,
offsetWidth,
rect
}
}
export default _getElementSizes
JavaScript
1
https://gitee.com/yaohaixiao/dom.js.git
git@gitee.com:yaohaixiao/dom.js.git
yaohaixiao
dom.js
dom.js
main

搜索帮助

53164aa7 5694891 3bd8fe86 5694891