js 三大家族之offset

JS中的offset家族:

一、offsetWidth与offsetHeight:

获取的是元素的实际宽高 = width + border + padding

    注意点:         1.可以获取行内及内嵌的宽高        2.获取到的值是一个number类型,不带单位        3.获取的宽高包含border和padding        4.只能读取,不能设置
console.log ( div.offsetWidth );//width + border + padding
console.log (div.offsetHeight );//height + border + padding

  

二:offsetLeft与offsetTop:

    offsetLeft:获取自己左外边框与父级元素的左内边框的距离    offsetTop:获取自己上外边框与父级元素的上内边框的距离
  offsetTop   和 style.top 的区别

      1.最大区别在于  offsetLeft  可以返回没有定位盒子的距离左侧的位置。 而 style.top 不可以  只有定位的盒子 才有 left  top right      2.offsetTop 返回的是数字,而 style.top 返回的是字符串,除了数字外还带有单位:px。      3.offsetTop 只读,而 style.top 可读写。      4.如果没有给 HTML 元素指定过 top 样式,则 style.top 返回的是空字符串。      5.最重要的区别  style.left 只能得到 行内样式     offsetLeft 随便
三:offsetParent:获取最近的定位父元素 (自己定位参照的父元素)  注意点:          1.如果元素自身是固定定位(fixed),则定位父级是null          2.如果元素自身是非固定定位,并且所有的父元素都没有定位,那么他的定位父级是body          3.body的定位父级是null

offsetParent 和 parentNode的区别:          如果当前元素的父级元素没有进行CSS定位(position为absolute或relative),offsetParent为body。          如果当前元素的父级元素中有CSS定位(position为absolute或relative),offsetParent取最近的那个父级元素。


原文地址:https://www.cnblogs.com/wanguofeng/p/10622550.html

时间: 2024-10-10 05:44:52

js 三大家族之offset的相关文章

JSjs进阶--之JS三大家族:offset家族 Scroll家族 client家族

1.1  三大家族和一个事件对象 三大家族(offset/scroll/client) 事件对象/event   (事件被触动时,鼠标和键盘的状态)(通过属性控制) 1.2  Offset家族简介 offset这个单词本身是--偏移,补偿,位移的意思. js中有一套方便的获取元素尺寸的办法就是offset家族: offsetWidth和offsetHight以及offsetLeft和offsetTop以及offsetParent 共同组成了offset家族. 1.2.1  offsetWidth

js进阶之js三大家族:offset,scroll,client

offset与style的区别offset可以得到任意样式表中的样式值offset系列的数值没有单位offsetWidth包含padding+border+widthoffsetwidth等属性是只读属性,只能获取,不能赋值 所以,我们想要获取元素大小的位置,用offset更合适stylestyle只能获取到行内样式表stylewidth获得的是带有单位的字符串style.width不包括padding和border的值style.width是可读属性,可以获取也可以赋值 点语法与offset获

javascript三大家族:offset属性 scroll属性 client属性

(1)offset属性:1.1 offsetWidth = width + border + padding1.2 offsetHeight = height + border + padding1.3 offsetTop = 元素相对于浏览器顶部的距离1.4 offsetLeft = 元素相对于浏览器左边的距离功能:只读(获取)不写(设置)1.5 子元素的offsetTop和offsetLeft:关键看父元素是否设置了定位,若有则相对于父元素的上边框和左边框的距离:若没有则相对于浏览器顶部和左

Linux网络属性配置“三大家族”(ifcfg、iproute、配置文件)

Linux系统下网络管理命令和方法是Linux工作人员必学的技能,现将Liunx下常用网络管理命令和方法总结如一下: 网络管理的三大家族:ifcfg家族.iproute家族和修改配置文件.ifcfg和iproute特点是配置立即生效,但不长久生效,修改配置文件可长久生效,但不能立即生效,需要重新启动网络服务.现将分别介绍如下: ifcfg家族: 包括ifconfig.route.netstat三大命令. ifconfig命令: 功能:configure a network interface,查

js三大特性之封装

js三大特性之封装 为什么要进行封装? 封装可以使代码更简洁,复用性高,易维护 let a={ fn(){ return 1 } } let b=a console.log(a.fn()) // 1 console.log(b.fn()) // 1 上面代码中a是一个对象,对象是引用数据类型,引用数据类型操作的是引用地址,相当于把a的引用地址赋值给了b,所以现在a和b公用的是一个引用空间 相当于我们把fn这个函数封装在了一个引用地址中,a和b都指向这个引用地址,所以它们可以公用fn这个函数 在实

javascript教程系列46: JS三大系列-方便的offset 家族

1 offset 家族 offset这个单词本身是--偏移,补偿,位移的意思. js中有一套方便的获取元素尺寸的办法就是offset家族: 2  offset 结构介绍为: 3 offset常用属性 1 offsetWidth offsetHeight 得到对象的宽度和高度(自己的,与他人无关) offsetWidth = width+padding+border 2 offsetLeft  offsetTop 返回距离上级盒子(带有定位)左边的位置 如果父级都没有定位则以body 为准 off

js实现jquery的offset()

用过jQuery的offset()的同学都知道 offset().top或offset().left很方便地取得元素相对于整个页面的偏移. 而在js里,没有这样直接的方法,节点的属性offsetTop可以获得该节点相对于父节点的相对偏移 但不能直接获得其绝对偏移,我们可用节点逐层递归向上来相加offsetTop来获得绝对偏移. function getOffset(Node, offset) { if (!offset) { offset = {}; offset.top = 0; offset

05 js三大流程控制(顺序流程、分支控制、循环控制)

1.Javascript的控制语句 ①顺序控制 ②分支控制 2.1单分支 if (条件表达式) {执行语句} 2.2双分支 if (条件表达式){ }else{ } 2.3多分支 if (条件表达式){ //执行 }else if() { //执行 }else if ..... ()//可以有多个else if { //执行 } else{ //可以没有 } 强调一点: 一旦找到一个满足条件的入口,执行完毕后,就直接结束整个多分支. switch(条件表达式){ case 常量1: //执行语句

06 js三大流程控制(顺序流程、分支控制、循环控制) 、js调式技巧

循环控制 ①For循环 for (var i =0;i< 10 ;i++ ) {  document.writeln("你好<br>"); } ②While先判断再执行语句 while (i< 10) {   document.writeln("hello<br>"); i++; } ③Do while 先执行再判断 var i=0; do {   document.writeln("ni hao <br>&