JavaScript四大家族之client家族

javascript 元素对象拥有client家族主要属性:

 

clientHeight:  (可见区域高度:height+padding)

 

clientWidth:  (可见区域宽度:width+padding)

 

clientLeft  (资料显示是当前元素的offsetLeft距离当前窗口左边的距离,但通过我的测试发现值永远等于border-left,并且在w3c的DOM Element上找不到clientLeft相关信息)

 

clientTop  (资料显示是当前元素的offsetLeft距离当前窗口左边的距离,但通过我的测试发现值永远等于border-top,并且在w3c的DOM Element上找不到clientTop相关信息)

 

client可通过元素对象的属性clientWidth和clientHeight找到它。

 

但整个浏览器的滚动条即document的滚动条元素归属存在兼容性问题。

 

IE678以及其他浏览器认为整个文档对象属于document.documentElement元素的即html。

 

未声明DTD <!DOCTYPE html> 的浏览器认为文档对象属于document.body元素的。

 

所以只要找正确元素即可实现浏览器兼容。if(document.CompatMode==CSS1Compat)表示支持document.documentElement元素,else 表示支持document.body元素。

 

最新浏览器IE9+及其他浏览器都认为整个文档属于Window对象的,可通过Window.innerWidth和Window.innerHeight获得

 

注:参考网址http://www.w3school.com.cn/jsref/dom_obj_all.asp

转载于:https://www.cnblogs.com/Gxqsd/p/7337651.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值