JS学习 - offset家族(一)
JS学习 - offset家族(一)
先来张图开开胃

- offsetWidth offetHeight
- 得到对象的宽度和高度(自己的,与他人无关)
- offsetWidth = width + border + padding
- div {width:220px; border-left:2px solid red; padding:10px;} div.offsetWidth = 220 + 2 + 20;
- offsetLeft offsetTop
- 返回距离上级盒子(最近的
带有定位的盒子)左边的位置 - 如果父级都没有定位则以body为准
这里的父级指的是所有的上一级,不仅仅指的是父亲级别,还可以是爷爷级别或者更高级别 - offsetLeft从父级的padding开始算,父亲的border不算 '盒子到定位的父盒子,边框到边框的距离'
- 返回距离上级盒子(最近的
- offsetParent
- 返回该对象的父级('带有定位的父级,这里的父级包括父亲级别或者更高级别'), 请自觉区别parentNode('返回的是父亲级别')
- 如果当前元素的父级元素没有进行CSS定位(postion为absolute或relative),offsetParent为body
- 如果当前元素的父级元素中有CSS定位(postion为absolute或relative),offsetParent取最近的那个父级元素
重点 - offsetWidth,offetHeight,offsetLeft,offsetTop 与 style.width,style.height,style.left,style.top 的区别
这里拿offsetTop 和 style.top作比较
- 1.最大的区别在于offsetTop可以返回没有定位的盒子距离顶部的位置,而style.top不可以,只要定位的盒子,才有left top right bottom
- 2.offsetTop返回的是数字,而style.top返回的是字符串,除了数字外还带有单位:px
- 3.offsetTop 只读,而style.top可读写
- 如果没有给HTML元素指定过top样式,则style.top返回的是空字符串
style.top只能得到行内样式;offsetTop没有限制
JS学习 - offset家族(一)的更多相关文章
- javascript总结46: JS三大系列-方便的offset 家族
1 offset 家族 offset这个单词本身是--偏移,补偿,位移的意思. js中有一套方便的获取元素尺寸的办法就是offset家族: 2 offset 结构介绍为: 3 offset常用属性 ...
- JavaScript动画:offset家族和匀速动画详解(含轮播图的实现)
本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. offset家族简介 我们知道,三大家族包括:offset/scroll ...
- offset家族基本简介
Offset家族简介 offset这个单词本身是--偏移,补偿,位移的意思. js中有一套方便的获取元素尺寸的办法就是offset家族: offsetWidth和offsetHight 以及offse ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- js学习之变量、作用域和内存问题
js学习之变量.作用域和内存问题 标签(空格分隔): javascript 变量 1.基本类型和引用类型: 基本类型值:Undefined, Null, Boolean, Number, String ...
- 【Knockout.js 学习体验之旅】(3)模板绑定
本文是[Knockout.js 学习体验之旅]系列文章的第3篇,所有demo均基于目前knockout.js的最新版本(3.4.0).小茄才识有限,文中若有不当之处,还望大家指出. 目录: [Knoc ...
- 【Knockout.js 学习体验之旅】(2)花式捆绑
本文是[Knockout.js 学习体验之旅]系列文章的第2篇,所有demo均基于目前knockout.js的最新版本(3.4.0).小茄才识有限,文中若有不当之处,还望大家指出. 目录: [Knoc ...
- 【Knockout.js 学习体验之旅】(1)ko初体验
前言 什么,你现在还在看knockout.js?这货都已经落后主流一千年了!赶紧去学Angular.React啊,再不赶紧的话,他们也要变out了哦.身旁的90后小伙伴,嘴里还塞着山东的狗不理大蒜包, ...
- js学习篇1--数组
javascript的数组可以包含各种类型的数据. 1. 数组的长度 ,直接用 length 属性; var arr=[1,2,3]; arr.length; js中,直接给数组的length赋值是会 ...
随机推荐
- iOS常用RGB颜色的色值表
常用RGB颜色表 R G B 值 R G B 值 R G B 值 黑色 0 0 0 #000000 黄色 255 255 0 #FFFF00 浅灰蓝色 176 224 230 #B0E0E6 象牙黑 ...
- mybatis-generator自动生成dao,mapping,model
mybatis-generator下载地址:https://github.com/mybatis/generator/releases/tag/mybatis-generator-1.3.2 下载好后 ...
- phantomjs 的安装部署
下载地址http://phantomjs.org/download.htmlwget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs ...
- [na]wireshark排查打印机问题
抓包工具排除故障 前言:上网慢,可能是内网堵了.装上wireshark,可抓到广播包,多播包,以及发给自己的包.如果想抓lan内其他人之间的通信包,那就要在sw上做端口镜像. 1.背景 调试打印机的人 ...
- ExtJs--05--给window组件加入功能条以及子组件获取上级或下级组件的属性和方法
Ext.onReady(function(){ /** 1-- 给容器组件加入控制条 及 控制项 控制条 不同的方向有多种 tbar lbar rbar bbar fbar 2-- 依据组件本身拿到上 ...
- Win8/Win10下程序经常无响应的解决办法
如果你使用Win8/Win10系统时经常出现程序无响应的问题不仿试下如下解决办法. 表现症状: 任何程序都有可能出现无响应(记事本.Visual Studio.QQ.视频播放器等) 一旦一个程序出现未 ...
- ES performance
http://easyice.cn/ https://m.aliyun.com/yunqi/articles/60474 https://www.jianshu.com/c/d5c542376948 ...
- How lock works?
Eliminating Synchronization-Related Atomic Operations with Biased Locking and Bulk Rebiasing http:// ...
- c++ STL map 结构体
Map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时候 ...
- [开源项目-MyBean轻量级配置框架] 使用MyBean快速搭建分模块的应用程序(主页面的TAB)(DLL-MDI)
[概述] 抱歉由于上次开源比较匆忙,没有来的及做一个DEMO,里面也有些垃圾的文件没有及时清理.DEMO其实昨天晚上已经调通.相关说明文档今天晚上才说明好,欢迎大家继续关注和交流,和大家一起分享我10 ...