获取页面可视区的高度·DOCTYPE的作用·将滚动条定位到具体的元素

1.获取页面可视区的高度

有两个获取页面可视区的高度, document.documentElement.clientHeightdocument.body.clientHeight,这两个的区别是页面是否使用兼容模式,即是否使用<!DOCTYPE>

document.documentElement是整个html文档的内容,而document.body只是整个body的内容。

当页面有<!DOCTYPE>时,document.documentElement.clientHeight指的是页面可视高度,而后者指的是页面中body中的内容高度,并不包括JS添加的部分。

当页面没有<!DOCTYPE>时,document.documentElement.clientHeight指的是页面的高度(页面可视的高度+页面被卷去的高度($('html,body').scrollTop())),后者指的是页面的可视区高度。

不管是加没加头声明都能正确的获取可视区高度的方法
javascript
var noDOC = document.body;
var hasDOC = document.documentElment;
var mode = (document.compatMode === "CSS1Compat");
var seenHeight = mode ? hasDOC.height : noDOC.height;

2.DOCTYPE的作用
<!DOCTYE>的作用是声明文档的解析类型为兼容模式,避免怪异模式。

document.compatMode:
BackCompat:怪异模式,浏览器使用自己的怪异模式解析渲染页面。
CSS1Compat:标准模式,浏览器使用W3C的标准解析渲染页面。

这个属性会被浏览器识别并使用,但是如果你的页面没有DOCTYPE的声明,那么compatMode默认就是BackCompat。

3.将滚动条定位到具体的位置

$("html,body").animate({scrollTop:$("").offset().top},1);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值