常见的属性:

网页可见区域宽: document.body.clientWidth;

网页可见区域高: document.body.clientHeight;

网页可见区域宽: document.body.offsetWidth   (包含边线的宽);

网页可见区域高: document.body.offsetHeight (包含边线的高);

网页正文全文宽: document.body.scrollWidth;(含滚动条时,即滚动条从最顶端滚到最底端实际走过的距离)

网页正文全文高: document.body.scrollHeight;(含滚动条时,即滚动条从最顶端滚到最底端实际走过的距离)

网页被卷去的高: document.body.scrollTop;

网页被卷去的左: document.body.scrollLeft;

网页正文项目组上: window.screenTop;(返回窗口相对于屏幕的y坐标)

网页正文项目组左: window.screenLeft;(返回窗口相对于屏幕的x坐标)

屏幕辨别率的高: window.screen.height;(返回当前屏幕高度,即分辨率值)

屏幕辨别率的宽: window.screen.width;(返回当前屏幕宽度,即分辨率值)

屏幕可用工作区高度: window.screen.availHeight;(空白空间)

屏幕可用工作区的宽度:window.screen.availWidth;(空白空间)

(1)offsetLeft

假设 obj 为某个 HTML 控件。

obj.offsetTop 指 obj 间隔上方或上层控件的地位,整型,单位像素。

obj.offsetLeft 指 obj 间隔左方或上层控件的地位,整型,单位像素。

注意的是;

{I}、offsetTop 返回的是数字,而 style.top 返回的是字符串,除了数字外还带有单位:px。

{II}、offsetTop 只读,而 style.top 可读写。

{III}、若是没有给 HTML 元素指定过 top 样式,则 style.top 返回的是空字符串。

(2)clientWidth/clientHeight,offsetWidth/offsetHeight,scrollWidth/scrollHeight

IE、Opera 认为 offsetHeight = clientHeight + 迁移转变条 + 边框。

NS、FF 认为 offsetHeight 是网页内容实际高度,可以小于 clientHeight。

IE、Opera 认为 scrollHeight 是网页内容实际高度,可以小于 clientHeight。

NS、FF 认为 scrollHeight 是网页内容高度,不过最小值是 clientHeight。

clientHeight 就是透过浏览器看内容的这个区域高度。

即:NS、 FF 认为 offsetWidth/offsetHeight 和 scrollWidth/scrollHeight 都是网页内容高度,只不过当网页内容高度小于便是 clientWidth/clientHeight 时,scrollWidth/scrollHeight 的值是 clientWidth/clientHeight,而 offsetWidth/offsetHeight 可以小于clientWidth/ clientHeight。IE、Opera 认为 offsetWidth/offsetHeight 是可视区域 clientWidth/clientHeight 迁移转变条加边框。scrollWidth/scrollHeight 则是网页内容实际高度。

(3)scrollTop/scrollLeft.scrollWidth/scrollHeight

IE 和 FireFox 周全支撑,而 Netscape 和 Opera 不支撑 scrollTop、scrollLeft(document.body 除外)。

scrollWidth/scrollHeight 是内部元素的绝对宽度/高度,包含内部元素的隐蔽的项目组。

(4)offsetWidth/offsetHeight

与style.width属性的差别在于:如对象的宽度设定值为百分比宽度,则无论页面变大还是变小,style.width都返回此百分比,而offsetWidth则返回在不合页面中对象的宽度值而不是百分比值

与style.height属性的差别在于:如对象的宽度设定值为百分比高度,则无论页面变大还是变小,style.height都返回此百分比,而offsetHeight则返回在不合页面中对象的高度值而不是百分比值

(5)offsetParent

offsetParent是个只读属性,返回最近显示指定位置的容器元素的引用。如果元素没有指定位置,最近的元素或者根元素(标准模式下是html,怪异模式下是body)就是offsetParent。当元素的style.display='none'时,offsetParent返回null。由于offsetTop和offsetLeft是相对于页边距,因此offsetParent是非常有用的。

浏览器兼容性

在以WebKit为核心的浏览器上,如果元素是隐藏的(该元素或者上级元素style.display='none')或者元素自身style.position='fixed',那么就会返回null。

在IE(9)上如元素style.position='fixed',该属性就会返回null。(然而display:none不影响这个浏览器)

扩展:

1、style.left,style.top,style.right,style.bottom的使用注意:

{I}

position的属性中有static、fixed、relative、absolute四个属性。常用relative和absolute。

(1)若指定为static时,DIV遵循HTML规则;

(2)若指定为relative时,可以用top、left、right、bottom来设置DIV在页面中的偏移,但是此时不可使用层;

(3)若指定为absolute时,可以用top、left、right、bottom对DIV进行绝对定位;

(4)若指定为fixed时,在IE7与FF中DIV的位置相对于屏幕固定不变,IE6中没有效果(期待高手指点原因);

left:设置对象相对于文档层次中最近一个定位对象的左边界的位置。

top:设置对象相对于文档层次中最近一个定位对象的上边界的位置。

right:设置对象相对于文档层次中最近一个定位对象的右边界的位置。

bottom:设置对象相对于文档层次中最近一个定位对象的下边界的位置。

{II}

ie6-ie8可使用可以直接用obj.style.top=100; 但在FireFox和ie9中必须加上单位,变成obj.style.top=100+'px'; style.left同理。

2、clientWidth = content + padding       clientHeight = content+ padding  (即:元素的clientWidth,clientHeight是指这个元素的包含补白在内的宽,高)

clientWidth与clientHeight都是只读属性,

3、scrollHeight和scrollWidth属性,指包含滚动条在内的该元素的视觉面积。表示滚动条滚动的高度和宽度。

滚动条滚动的垂直距离,是document对象的scrollTop属性;滚动条滚动的水平距离是document对象的scrollLeft属性。

4、offsetTop和offsetLeft属性,表示该元素的左上角与父容器(offsetParent对象)左上角的距离。(注意:不适用于表格和iframe内的元素)

5、getBoundingClientRect()方法。它返回一个矩形对象,其中包含了left、right、top、bottom四个属性,分别对应了该元素的左上角和右下角相对于浏览器窗口(viewport)左上角的距离。【为了兼容把body加上margin:0;padding:0,注意加DOCTYPE声明(有了它IE还是挺听话的)】

javascript座标_javascript JS元素位置和位置坐标相关推荐

  1. javascript js jquery获取元素位置代码总结

    制作网页的过程中,你有时候需要知道某个元素在网页上的确切位置. 下面的教程总结了Javascript在网页定位方面的相关知识. 一.网页的绝对大小和相对大小 首先,要明确两个基本概念. 一张网页的全部 ...

  2. html js引入位置,JavaScript | 文件引入位置的讲究,在文件头部和尾部哪里引入JS文件更好?...

    JS放在文件头部还是尾部 HTML5学堂:JavaScript文件的引入方式与CSS引入方式类似,但是外引的JS文件可以放置在html文件的任意地方,JS文件放置在头部或者底部有何不同呢?或者说,放置 ...

  3. JavaScript获取DOM元素位置和尺寸大小

    在一些复杂的页面中经常会用JavaScript处理一些DOM元素的动态效果,这种时候我们经常会用到一些元素位置和尺寸的计算,浏览器兼容性问题也是不可忽略的一部分,要想写出预想效果的JavaScript ...

  4. JavaScript能力测评经典题及答案(一:数组之查找组元素位置)

    JavaScript实现:数组之查找元素位置 题目描述:  找出元素 item 在给定数组 arr 中的位置 输出描述:  如果数组中存在 item,则返回元素在数组中的位置,否则返回 -1 e.g: ...

  5. vue 获取元素在浏览器的位置_JavaScript获取窗口位置和元素坐标(兼容版)

    在一些复杂的页面中经常会用JavaScript处理一些DOM元素的动态效果,这种时候我们经常会用到一些元素位置和尺寸的计算,浏览器兼容性问题也是不可忽略的一部分,要想写出预想效果的JavaScript ...

  6. js移除html指定id元素,javascript - 按ID删除元素

    javascript - 按ID删除元素 使用标准JavaScript删除元素时,必须首先转到其父级: var element = document.getElementById("elem ...

  7. 第 1 节 JavaScript简介、JS的HelloWorld、JS编写位置

    第1节 JavaScript简介 JavaScript简介 实现 特点 JS的HelloWorld JS编写位置 JavaScript简介 实现 ECMAScript 是一个标准,一般情况下这两个词被 ...

  8. 使用JavaScript和D3.js实现数据可视化

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由独木桥先生 发表于云+社区专栏 介绍 D3.js是一个JavaScript库.它的全称是Data-Driven Documents(数 ...

  9. moment转换时间戳_酷炫时间轮盘:JS元素圆形布局制作时间轮盘动画效果

    点击右上方红色按钮关注"web秀",让你真正秀起来 前言 前段时间看抖音,有人用时间轮盘作为动态的桌面壁纸,感觉很好玩,于是突发奇想,可以用JS来实现这个功能. 来来来,先看看成果 ...

最新文章

  1. spss相关性分析_SPSS有话说:如何得出问卷或量表的结构或维度——探索性因素分析...
  2. mysql查询filter_子查询包含or引起的filter性能问题案例
  3. python性能分析工具_Python Profilers 分析器
  4. php转译html,使用php转义输出HTML到JavaScript
  5. mysql 中 group_concat()用法
  6. Java基础日常总结!!
  7. django1.11使用mysql_django 1.11.1 连接MySQL
  8. Backbone源码分析-noConflict
  9. 【概率密度函数估计】--- 最大似然估计与Parzen窗函数画法
  10. ORACLE建表sql
  11. 联想笔记本电脑(LENOVO)关闭触摸板
  12. Linux设置静态IP
  13. WIN10 共享文件夹并取消密码访问
  14. zend新建php项目,Zend Studio使用教程:创建PHP文件的三种方式
  15. 关于护肤那些事(程序员必知,女朋友要考的)
  16. 2016 年最新苹果开发者账号注册流程详解(个人账号篇)
  17. CIDEr 评价指标
  18. 开发与测试常见问题总结与建议
  19. 每日1500元只为陪伴,正值妙龄的90、95后正在被“孤独”侵袭
  20. c# php md5 32位加密,C#实现将32位MD5摘要串转换为128位二进制字符串的方法

热门文章

  1. 人人都是产品经理1.0
  2. 【java】简介(一)
  3. 让你的 Node.js 应用跑得更快的 10 个技巧
  4. 【转载】10个有用的du命令行
  5. Windows Phone 7 处理休眠和墓碑的恢复
  6. 改变TFS本地映射路径.
  7. 在linux通过源码编译安装redis详细步骤
  8. PAT——乙级1036:跟奥巴马一起编程 乙级1027:打印沙漏 (有坑)
  9. condition_variable_any
  10. mongodb batchInsert