javascript scrollLeft,scrollWidth,clientWidth,offsetWidth 完全详解
发布时间:2024-04-22 22:28:47
scrollHeight: 获取对象的滚动高度。
scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离
scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离
scrollWidth:获取对象的滚动宽度
offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度
offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置
offsetTop:获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置
event.clientX 相对文档的水平座标
event.clientY 相对文档的垂直座标
event.offsetX 相对容器的水平坐标
event.offsetY 相对容器的垂直坐标
document.documentElement.scrollTop 垂直方向滚动的值
event.clientX+document.documentElement.scrollTop 相对文档的水平座标+垂直方向滚动的量
以上主要指IE之中,FireFox差异如下:
IE6.0、FF1.06+:
clientWidth = width + padding
clientHeight = height + padding
offsetWidth = width + padding + border
offsetHeight = height + padding + border
IE5.0/5.5:
clientWidth = width - border
clientHeight = height - border
offsetWidth = width
offsetHeight = height
(需要提一下:CSS中的margin属性,与clientWidth、offsetWidth、clientHeight、offsetHeight均无关)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="gb2312"> <head> <head> <title> 代码实例:关于clientWidth、offsetWidth、clientHeight、offsetHeight的测试比较 </title> <meta http-equiv="content-type" content="text/html; charset=gb2312" /> <meta name="author" content="枫岩,CnLei.y.l@gmail.com"> <meta name="copyright" content="https://www.aspxhome.com" /> <meta name="description" content="关于clientWidth、offsetWidth、clientHeight、offsetHeight的测试比较" /> <style type="text/css" media="all"></style><style type="text/css" media="all" bogus="1"> body {font-size:14px;} a,a:visited {color:#00f;} #Div_CnLei { width:300px; height:200px; padding:10px; border:10px solid #ccc; background:#eee; font-size:12px; } #Div_CnLei p {margin:0;padding:10px;background:#fff;} </style> <script type="text/javascript"></script> </head> <body> <p>点击下面的链接:</p> <div id="Div_CnLei"> <p>GetClientWidth(); GetClientHeight();</p> <p>GetOffsetWidth(); GetOffsetHeight();</p> </div> <div id="Description"> <p><strong>IE6.0、FF1.06+:</strong> clientWidth = width + padding = 300+10×2 = 320 clientHeight = height + padding = 200+10×2 = 220 offsetWidth = width + padding + border = 300+10×2+10×2= 340 offsetHeight = height + padding + border = 200+10×2+10×2 = 240</p> <p><strong>IE5.0/5.5:</strong> clientWidth = width - border = 300-10×2 = 280 clientHeight = height - border = 200-10×2 = 180 offsetWidth = width = 300 offsetHeight = height = 200</p> </div> </body> </html>


猜你喜欢
- 第一步:登陆root用户。第二步:新建一个数据表,并且选好排序规则,此处我使用testtable。第三步:我们新建一个用户输入相关的账户名以
- 本文实例介绍了asp对access数据库常见操作方法,查找记录,添加记录更新记录,删除记录等。一、查找记录find.htm<HTML&
- 本文实例讲一下如何用thinkphp实现数据的删除和批量删除吧。预期效果图: 原谅博主对照片的处理是如此的草率吧。。。仍然是 通过
- Python使用QRCode模块生成二维码QRCode官网https://pypi.python.org/pypi/qrcode/5.1简介
- 首先画出流程图,流程图与现实代码有出入,因为刚开始画流程图的时候,有些东西没考虑进去,后来写着写着就慢慢能想起来并实现了。另有一点经验推荐给
- 在之前文章给大家分享后不久,就有位小伙伴跟小编说在用scrapy搭建python爬虫中出现错误了。一开始的时候小编也没有看出哪里有问题,好在
- 本文实例为大家分享了Python自动循环扔QQ邮箱漂流瓶的具体代码,供大家参考,具体内容如下Python代码如下:# coding=utf-
- cmd中输入net start mysql 提示:服务名无效请进入MySQL的bin目录,并在bin目录打开命令行窗口,或设置系统环境变量,
- 一、正则表达式的特殊字符介绍正则表达式^ 匹配行首 &nb
- 1、去除一个数组中的重复元素:使用grep函数代码片段: 代码:my @array = ( 'a', 'b'
- 这篇文章收集了我在Python新手开发者写的代码中所见到的不规范但偶尔又很微妙的问题。本文的目的是为了帮助那些新手开发者渡过写出丑陋的Pyt
- 本文实例讲述了Python数据结构与算法之图的基本实现及迭代器。分享给大家供大家参考,具体如下:这篇文章参考自《复杂性思考》一书的第二章,并
- 本文实例讲述了JS/jQuery实现简单的开关灯效果。分享给大家供大家参考,具体如下:实现效果:html结构只有两个button标签<
- MybatisPlus处理Mysql的json类型1、在数据库表定义JSON字段;2、在实体类加上@TableName(autoResult
- 路由关系映射的一个小问题URL中那个上尖号在正则中表示 以某某开头 $符号表示以某某结尾 这就限制了开头和结尾,也就固定了长度但是 admi
- 项目需求:浏览器中访问django后端某一条url(如:127.0.0.1:8080/get_book/),实时朝数据库中生成一千条数据并将
- 本文介绍ThinkPHP的limit()方法的用法。limit方法可以用于对数据库操作的结果进行取指定范围的条数。即相当于是在mysql查询
- 说明1、字典运算中的键必须是不可变类型,如整数(int)、浮点数(float)、字符串(str)、元组(tuple)等。2、列表(list)
- 本文实例讲述了js+php实现静态页面实时调用用户登陆状态的方法。分享给大家供大家参考。具体分析如下:在程序开发中,经常会把页面做成html
- 抽象工厂模式(Abstact Factory)是一种常见的软件设计模式。该模式为一个产品族提供了统一的创建接口。当需要这个产品族的某一系列的