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

JavaScript019

通过JS 判断页面是否有滚动条的简单方法,第1张

判断是否有滚动条的方法

function hasScrollbar() {    

    return document.body.scrollHeight > (window.innerHeight || document.documentElement.clientHeight)

}

一般情况下,使用 document.body.scrollHeight >window.innerHeight 就可以判断。

但是在 IE7,IE8 中 window.innerHeight 为 underfined,所以为了兼容 IE7、IE8,需要使用 document.documentElement.clientHeight 属性计算窗口高度。

onload=function(){

var

changeBG=0,scrollTop=0

//设置原始变量

setInterval(function(){

scrollTop=document.body.scrollTop

if(changeBG&&scrollTop>200){

//判断是否更换了背景及滚动条是否到达指定高度

document.body.scrollTop=0

//转到页面顶部

document.body.style.backgroundImage="url(...)"

//变换背景

changeBG=1

//表示已经转换了背景

setTimeout(function(){

document.body.scrollTop=changeBG

//返回原来位置

},1000)

}

},1000)

}

function hasScrollbar() {

return document.body.scrollHeight >(window.innerHeight || document.documentElement.clientHeight)

}

调用该方法便可以 原理很简单 就是看内容的高度是否比浏览器更高