`

JS判断页面是否出现滚动条

 
阅读更多

当可视区域小于页面的实际高度时,判定为出现滚动条,即:

if (document.documentElement.clientHeight < document.documentElement.offsetHeight) scroll = true;

要使用 document.documentElement ,必须在页面头部加入声明:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

 

其实,这段代码是不起作用的,因为他没考虑到一个问题,就是浏览器的边框,当我们在获取页面的offsetHeight高度时是包括了浏览器的边框的,浏览器的边框是2个像素,所以这时无论在任何情况下clientHeight 始终是小于offsetHeight的,这就使得即使没有滚动条它也为true,因此我们要修正这个错误,代码应该这样改,在offsetHeight上减去4个像素,即:

if (document.documentElement.clientHeight < document.documentElement.offsetHeight-4){

//执行相关脚本。

}

还有,这里要搞清楚,上面这代码是判断横向滚动条的,我们一般要判断的是纵向滚动,代码如下:

 

if (document.documentElement.clientWidth < document.documentElement.offsetWidth-4){

//执行相关脚本。

呵呵,问题搞定,其实我觉得这是个非常无聊的问题,我想没几个人想着去判断滚动条的有无,没有什么实际意义,在这里帮助一下那些需要这功能的朋友走出误区,免得浪费大量时间去网上搜而无果。

分享到:
评论

相关推荐

    JS判断页面是否出现滚动条的方法

    主要介绍了JS判断页面是否出现滚动条的方法,涉及javascript针对页面元素的读取与判定实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下

    通过 JS 判断页面是否有滚动条的实现方法

    最近在写插件的过程中,需要使用 JS 判断是否有滚动条,搜了一下,大致方法都差不多,但都有些啰嗦,代码不够简洁。最终通过参考不同方法,写了一个比较简单的方法。在判断滚动条的同时也需要计算滚动条的宽度,通过...

    JS简单判断滚动条的滚动方向实现方法

    以下代码实现判断页面的滚动条的滚动方向; var sign = 80;//定义默认的向上滚与向下滚的边界 [removed] = [removed] = function(){ var oScrollTop=$(window).scrollTop(); if ( oScrollTop &gt; 80) {  //write ...

    js实现的判断滚动条是否到底部的特效源码.zip

    js实现的判断滚动条是否到底部的特效源码是一段可以判定有没有浏览到网页最底部的效果代码,将网页拖动或利用鼠标滚轮滚动到最底部后,页面中就会提示一段“滚动条,已经到底部了!”的提示语,本段代码适应于所有...

    js判断滚动条是否已到页面最底部或顶部实例

    主要介绍了js判断滚动条是否已到页面最底部或顶部的原理与方法,以实例的形式详细分析了js实现返回顶部功能所涉及的各种技巧,并对相关知识点进行了总结归纳,需要的朋友可以参考下

    判断滚动条到底部的JS代码

    判断滚动条到底部,需要用到DOM的三个属性值,即scrollTop、clientHeight、scrollHeight。 scrollTop为滚动条在Y轴上的滚动距离。 clientHeight为内容可视区域的高度。 scrollHeight为内容可视区域的高度加上溢出...

    JS实现判断滚动条滚到页面底部并执行事件的方法

    主要介绍了JS实现判断滚动条滚到页面底部并执行事件的方法,本文先是分析了需求以及必备知识,然后给出实现代码,需要的朋友可以参考下

    vue 纯js监听滚动条到底部的实例讲解

    1、怎样用纯js判断滚动条是否到底部? 先了解几个关键词: (1)滚动条到顶部的位置:scrollTop (2)当前窗口内容可视区:windowHeight (3)滚动条内容的总高度:scrollHeight 触发监听的函数是: [removed] = ...

    JS实现部分HTML固定页面顶部随屏滚动效果

    如果你把滚动条滚动至最上边了,那么它会自动判断是否到顶端了,然后一直置顶从而不怕遮挡。 这种特效是通过JavaScript和CSS实现的,在实际开发中有不少用途,下面是我找到的一个使用JavaScript制作的仿淘宝智能浮动...

    js网页滚动条滚动事件实例分析

    本文实例讲述了js网页滚动条滚动事件用法。分享给大家供大家参考。具体分析如下: 在做js返回顶部的效果时,要监听网页滚动条滚动事件,这个事件就是:[removed]。当onscroll事件发生时,用js获得页面的scrollTop值...

    JS实现利用闭包判断Dom元素和滚动条的方向示例

    主要介绍了JS实现利用闭包判断Dom元素和滚动条的方向,涉及javascript闭包、事件响应及页面元素属性动态操作相关使用技巧,需要的朋友可以参考下

    JQ滚动条效果

    防CSDN论坛,页面滚动一定距离后,顶部自动出现导航栏

    js实现的判断滚动条是否到底部的特效特效代码

    js实现的判断滚动条是否到底部的特效源码是一段可以判定有没有浏览到网页最底部的效果代码,将网页拖动或利用鼠标滚轮滚动到最底部后,页面中就会提示一段滚动条,已经到底部了!的提示语,本段代码适应于所有网页...

    js实现滚动条滚动到页面底部继续加载

    关键是计算滚动条是否滚动到了浏览器底部,算法如下 滚动条卷起来的高度 + 窗口高度 &gt; 文档的总高度 + 50/*我这里将滚动响应区域高度取50px*/;如果这个判断为true则表示滚动条滚动到了底部。 实例 &lt;style type...

    js判断iframe内的网页是否滚动到底部触发事件

    之前有个需求是要判断iframe内的网页是否滚动到底部触发事件, 网上找了许多资料都是说在当前页面下的, 索性就自己研究了一下, 找到了解决方法. clientHeight:这个元素的高度,占用整个空间的高度 offsetHeight:是...

    div模块层随页面滚动遇顶固定的两种方法(js&jQuery)

    而当我们下拉滚动条,随着页面向下滚动,当此工具条接触到浏览器的上边缘时,这时就会独立出来固定在顶部,不跟随页面滚动而滚动了,如下图: 类似的例子效果我们在别的网站上都有看到过,例如腾讯微博首页上,当...

Global site tag (gtag.js) - Google Analytics