美文网首页
offset家族

offset家族

作者: 嗨黄先生 | 来源:发表于2017-10-11 23:39 被阅读0次

三大家族和一个事件对象

三大家族(offset/scorll/client)
事件对象/event(事件被触动时,鼠标和键盘的状态)(通过属性控制)

Offset家族简介

offset这个单词本身是--偏移,补偿,位移的意思。
js中有一套方便的获取元素尺寸的办法就是offset家族;
offsetWidth和offsetHight 以及offsetLeft和offsetTop以及offsetParent
共同组成了offset家族。

offsetWidth和offsetHight(检测盒子 自身宽高+padding+border)

这两个属性,他们绑定在了所有的节点元素上,获取之后,只要调用这两个属性,我们就能获取元素节点的宽和高。
offset 宽/高=盒子自身的宽/高 +padding+border;
offsetWidth = width+padding+border;
offsetHeight = Height+padding+border;

offsetLeft和offsetTop(检测距离父盒子有定位的左/上面的距离)

返回距离上级盒子(带有定位)左边s的位置
如果父级都没有定位则以body为准
offsetLeft 从父亲的padding 开始算,父亲的border 不算。
在父盒子有定位的情况下,offsetLeft == style.left(去掉px)

offsetParent(检测父系盒子中带有定位的父盒子节点)

1、返回改对象的父级(带有定位)
如果当前元素的父级元素没有进行CSS定位(position为absolute或relative,fixed ),offsetParent为body。
2、如果当前元素的父级元素中有CSS定位(position为absolute或relative,fixed),offsetParent取最近的那个父级元素。

offsetLeft和style.left区别

一、最大区别在于offsetLeft可以返回没有定位盒子的距离左侧的位置。
而 style.left不可以
二、offsetTop 返回的是数字,而 style.top 返回的是字符串,除了数字外还带有单位:px。
三、offsetTop 只读,而 style.top 可读写。(只读是获取值,可写是赋值)
四、如果没有给 HTML 元素指定过 top 样式,则style.top 返回的是空字符串。

style.left在=的左边和右边还不一样。(左边的时候是属性,右边的时候是值)

相关文章

  • 06-JS特效-01三大系列和事件

    一、三大系列:offset家族、scroll家族、client 1、offset 1.1.简介 offset家族就...

  • 三大家族&&区别

    ----------------- offset --------------------- offset家族特点...

  • 前端基本功:JS(八):offset家族

    offset家族 offset 自己的目的: js中有一套方便的获取元素尺寸的办法就是offset家族; 1/...

  • offset家族与常用事件对象小结

    offset家族 offset自己的 目的:js中有一套方便的获取元素尺寸的办法就是offset家族; 1.1.1...

  • JS 特效

    offset家族三大家族和一个事件对象三大家族(offset/scroll/client)事件对象/event ...

  • offset家族

  • offset家族

    例如 div{ width:200px;border-left:2px solid red; padding:...

  • offset家族

    明明设置了width的值但是用js获取style.width的时候却为空,而offsetWidth不会 style...

  • offset家族

    三大家族和一个事件对象 三大家族(offset/scorll/client)事件对象/event(事件被触动时,鼠...

  • offset家族

    使用offset的目的: 为了可以获取元素自身的宽高属性和元素自身在页面中的位置信息。 offsetHeight ...

网友评论

      本文标题:offset家族

      本文链接:https://www.haomeiwen.com/subject/ztggyxtx.html