offset、scroll、client三大家族

offset家族

offsetWidth 与 offsetHeight

  1. offset 偏移
  2. 用于获取元素自身的位置和大小
  3. offsetWidth和offsetHeight获取对象自身的的宽度/高度 offsetWidth = width + border + padding; offsetHeight = height + border + padding
  4. offsetHeight 与 style.height 的区别

    • 得到的结果值不同

      • offsetHeight:获取元素的真实高度

      • style.height:只能获取行内样式style="height:100px;",如果样式写到了其他地方(如style代码块),甚至根本就没写,便无法获取
    • 获得的值的类型不同:
      • offsetHeight:数值类型

      • style.height:带单位的字符串
    • 使用方式的不同
      • offseHeight:只读属性, 只能获取属性值, 不能设置元素的高度

      • style.height:能获取、设置行内的height属性值

offsetParent(获取元素对象)

  1. offsetParent: 获取最近的定位父元素 (元素自身定位参照的父元素)
  2. 注意点
    • 如果元素自身是固定定位(fixed),则定位父级是null
    • 如果元素自身是非固定定位,并且所有的父元素都没有定位,那么他的定位父级是body
    • body的定位父级是null

offsetLeft 与 offsetTop

  1. offsetLeft: 获取自己左外边框与offsetParent的左内边框的距离

  2. offsetTop: 获取自己上外边框与offsetParent的上内边框的距离

scroll家族

scrollWidth 和 scrollHeight

  1. scroll 滚动
  2. scrollWidth 用与获取元素中内容的宽度,
  3. scrollHeight 用于获取元素中内容的高度
  4. 注意
    • 当元素中的内容宽度和高度小于元素的宽高时(即内容没有溢出元素时), 获取到的scrollWidth = width | scrollHeight = height
    • 当元素中的内容溢出时, scrollWidth = 内容宽 , scrollHeight = 内容高

scrollLeft 和 scrollTop

  1. scrollTop 当元素自身的onscroll事件发生时,元素向上卷曲出去的距离

  2. scrollLeft:当元素自身的onscroll事件发生时,元素向左卷曲出去的距离

client家族

clientWidth 和 clientHeight

  1. clientWidth 元素可视区域的宽度 ,边框内部的宽度,不带边框
  2. clientHeight 元素可视区域的高度 ,边框内部的高度,不带边框

clientLeft 和 clientTop

  1. clientLeft 元素左边边框的宽度(如果左边有滚动条会包含滚动条的宽度)
  2. clientTop 元素顶部边框的高度 (如果顶部有滚动条会包含滚动条的高度)

三大家族(offset、scroll、client)的更多相关文章

  1. js三大家族offset,scroll,cliennt的区别

    offset偏移(返回的是number类型) offsetLeft:返回盒子距离左边的距离 offsetTop:返回盒子距离顶部的距离 offsetHeight:返回盒子的高度,包括border,pa ...

  2. 三大家族,offset,scroll,client

    1.client 1.1主要成员 1.clientWidth 获取网页可视区域宽度(两种用法)    clientHeight 获取网页可视区域高度 (两张用法) 盒子调用: 指盒子本省 浏览器调用: ...

  3. JavaScript 特效之四大家族(offset/scroll/client/event)

      三大系列:offset.scroll.client 事件对象:event(事件被触动时,鼠标和键盘的状态)(通过属性控制)   三大系列都是以DOM元素节点的属性形式存在的. 类比访问关系,也是以 ...

  4. offset / scroll / client Left / Top

    1.offsetHeight / Width (只读) offsetHeight:表示该元素在垂直方向占用的空间大小,包含元素的高度+上边框高度+下边框高度 offsetWidth:表示该元素在水平方 ...

  5. offset,scroll,client系列

    offsetHeight: 元素高,height+border+paddingoffsetWidth: 元素宽,width+border+paddingoffsetTop: 距离offsetParen ...

  6. 第52天:offset家族、scroll家族和client家族的区别

    一.offset家族 1.offsetWidth offsetHeight offsetLeft offsetTop offsetParent共同组成了offset家族,用来获取元素尺寸. offse ...

  7. JS-特效 ~ 04. client对象、网页可视区域的宽高、client / offset / scroll 三大家族的区别、冒泡事件、事件委托、获取内嵌式和外链式属性getStyle(ele,attr) ;、缓动动画封装

    知识点: 模拟滚动条的解除事件问题 : event内置对象,包含 了大量事件: page兼容性: pageX || clientX + scool().top  : if (true === a)tr ...

  8. offset、client、scroll开头的属性归纳总结

    HTML元素有几个offset.client.scroll开头的属性,总是让人摸不着头脑.在书中看到记下来,分享给需要的小伙伴.主要是以下几个属性: 第一组:offsetWidth,offsetHei ...

  9. client三大家族区别(三大家族总结)

    目录 目录 2 今日内容: 4 第1章 第三大家族client 4 1.1 主要成员 4 1.2 三大家族区别(三大家族总结) 5 1.2.1 Width和height 5 1.2.2 top和lef ...

随机推荐

  1. html css笔记zht

    第3章 Img标签 路径问题 绝对路径:从盘符(C:\)出发的路径 (C:\Users\......) linux(绝对路径以 / 开头) 相对路径:( ./ 当前文件所在的目录)( ../上一级目录 ...

  2. Spring项目使用Junit4测试配置

    我们经常要写junit测试,在不启动整个web项目的情况下,测试自己的service实现或者是dao实现,我们来充分利用下junit4的强大功能. 1.junit4的测试类 import java.u ...

  3. 字符串join函数跟+号测试

    字符串join函数for循环+区别: 原因是这样的,字符串是不可变对象,当用操作符+连接字符串的时候,每执行一次+都会申请一块新的内存,然后复制上一个+操作的结果和本次操作的右操作符到这块内存空间,因 ...

  4. 通过Hack方式实现SDC中Stage配置联动刷新

    目录 问题描述 如何从外部获取下拉列表参数 如何实现根据下拉列表选项动态刷新 总结 问题描述 最近项目组准备开发一个IoT平台项目,需要使用到StreamSets DataCollector组件进行数 ...

  5. JavaWeb处理GET、POST时的编码乱码问题

    对于GET方法,只要设置了res.setContentType("text/html;charset=UTF-8"), req.getParameter()就不会产生乱码. 对于P ...

  6. BUAA-OO-表达式解析与求导

    BUAA-OO-表达式解析与求导 解析 按照常规,解析这一部分我们分为词法分析与语法分析.当然由于待解析的字符串较简单,词法分析器和语法分析器不必单独实现. 词法分析器 按照常规,我们先手写一个词法分 ...

  7. 为什么ArrayList、LinkedList线程不安全,Vector线程安全

    ArrayList源码 public boolean add(E e) { ensureCapacityInternal(size + 1); // Increments modCount!! ele ...

  8. 415 DOM 查找列表框、下拉菜单控件、对表格元素/表单控件进行增删改操作、创建元素并且复制节点与删除、 对表格操作、通用性和标准的事件监听方法(点击后弹窗效果以及去掉效果)

    DOM访问列表框.下拉菜单的常用属性: form.length.options.selectedindex.type       使用options[index]返回具体选项所对应的常用属性:defa ...

  9. Eclipse 开发设置编码格式--4个修改地方完美

    背景:本人用这么久,因为大部分都是设定为UTF-8 就可以了,但是一些老项目居然是GBK格式,所以 工作空间.通常文件类型的编码都是UTF-8. 针对特殊项目设定特定格式,实际中本人对整个项目设定并不 ...

  10. 【easy】257. Binary Tree Paths 二叉树找到所有路径

    http://blog.csdn.net/crazy1235/article/details/51474128 花样做二叉树的题……居然还是不会么…… /** * Definition for a b ...