<script type="text/javascript">

        //文档高度1016 包含隐藏的margin和padding 实际1000
//文档1000
//窗口高度为530时候, 滚动条 最小0, 最大高度为470 (加上隐藏margin和padding 为486)
//窗口高度为151时候, 滚动条 最小0, 最大高度为849
//窗口高度为200时候, 滚动条 最小0, 最大高度为800
//窗口高度为500时候, 滚动条 最小0, 最大高度为500
//说明1, 文档高度不变 窗口高度越小,滚动条高度越大,
//说明2, 文档高度不变 窗口高度越大,滚动条高度越小,
// 文档高度 - 窗口高度 = 滚动条最大高度(拉到底) //作为一个对象的w和h属性返回视口的尺寸
function getViewportSize(w) {
//使用指定的窗口, 如果不带参数则使用当前窗口
w = w || window; //除了IE8及更早的版本以外,其他浏览器都能用
if (w.innerWidth != null) //能获取当前窗口的宽度(包含滚动条)//当浏览器宽度调整时,这个值也会跟着变化
return { w: w.innerWidth, h: w.innerHeight }; //对标准模式下的IE(或任意浏览器)
var d = w.document;
if (document.compatMode == "CSS1Compat")
return { w: d.documentElement.clientWidth, h: d.documentElement.clientHeight }; //对怪异模式下的浏览器
return { w: d.body.clientWidth, h: d.body.clientHeight };
} window.onscroll = function () {
var t = document.documentElement.scrollTop || document.body.scrollTop;
//文档高度
var documentHeight = document.documentElement.offsetHeight; //文档高度
var viewPortHeight = getViewportSize().h; //窗口高度
var scrollHeight = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || ; //scrollTop 元素垂直滚动条位置
//return documentHeight - viewPortHeight - scrollHeight < 20; console.log("文档高度" + documentHeight);
console.log("窗口高度" + viewPortHeight);
console.log("滚动条高度" + scrollHeight); } </script>

js 滚动条的更多相关文章

  1. jquery.nicescroll.min.js滚动条使用方法

    jquery.nicescroll.min.js滚动条使用方法,Nicescroll 是制作自定义滚动条的jq插件.支持div,iframe,html等使用,兼容IE7-8,safari,firefo ...

  2. python实例编写(4)--js,滚动条,cookie,验证码,获取特定属性的元素,实现原理

    一.调用js 执行方法:execute_script(script,*args) 场景一:在页面上直接执行调用js 场景二:在定位的某个元素上执行调用js 如:掩藏文字(提示插件 tooltip设置淡 ...

  3. jquery.nicescroll.min.js滚动条插件的用法

    1.jquery.nicescroll.min.js源码 /* jquery.nicescroll 3.6.8 InuYaksa*2015 MIT http://nicescroll.areaaper ...

  4. JS滚动条下拉事件

    <script type="text/javascript"> window.onscroll = function(){ var t = document.docum ...

  5. js滚动条

    /*滚动条在Y轴上的滚动距离*/function ScrollTop(){ var scrollTop = 0, bodyScrollTop = 0, documentScrollTop = 0; i ...

  6. JS——滚动条

    1.核心思想与之前的拖拽盒子是一样的 2.完全将鼠标在盒子中的坐标给滚动条是错的,因为这样会使滚动条顶部立刻瞬间移动到鼠标位置 3.必须在鼠标按下事件时记住鼠标在滚动条内部的坐标,再将鼠标在盒子中的坐 ...

  7. JS 滚动条事件

    当滚动条滚动到最底部出发事件: $(window).scroll(function(){ if($(document).height()-$(this).scrollTop()-$(this).hei ...

  8. 原生JS滚动条位置处理

    // 滚动条位置 var scrollPosition = { // 位置 result: 0, // 监听位置 rememberPosition: function () { var type = ...

  9. js滚动条滚动到某个元素位置

    scrollTo(0,document.getElementById('xxx').offset().top);

随机推荐

  1. Open Flash Chart 简介

    http://www.ibm.com/developerworks/cn/opensource/os-cn-ecl-ofc/ Open Flash Chart(OFC)是一个开源的 Flash 图表绘 ...

  2. priority_queue实现

    #include <algorithm> using namespace std; /* priority_queue只允许在底端加入元素,并从顶端取出元素, 其内部元素不是依照被推入的次 ...

  3. namenode启动成功,但是不能通过web访问50070问题

    我在CentOS遇到这个问题,50070不行但8088可以,尝试了各种方法无法解决,各个进程全都启动,格式化namenode,各种配置正常均无法解决.后来觉得是默认访问端口没有生效,所以尝试添加端口配 ...

  4. Solidworks如果有两个相似的图纸如何快速复制第二份图纸

    如下图所示,我有两个零件,只有四个孔从螺纹孔改成了通孔(孔的尺寸改大了一点) 我已经画好了带螺纹的图纸   直接另存为,但是不要勾选另存为副本,改一下另存为的名字即可   然后打开这个另存为的工程图, ...

  5. Win7 无法安装Office source engine 足够的权限安装系统服务怎么办

    运行CMD,输入命令:sc delete ose 重试即可.

  6. Python&amp;MySQL

    环境:windows8+Python2.7+MySQL5.6 尝试过在C/C++中嵌入SQL语言,最终在其复杂"繁琐"环境配置中败下阵来,后来发现Python和MySQL比較eas ...

  7. 一款炫酷Loading动画--载入失败

    简单介绍 上一篇文章一款炫酷Loading动画–载入成功.给大家介绍了成功动画的绘制过程,这篇文章将接着介绍载入失败特效的制作. 相比成功动画,有了前面的经验,失败动画的过程就显得比較简单了. 动画结 ...

  8. 143 - ZOJ Monthly, October 2015 I Prime Query 线段树

    Prime Query Time Limit: 1 Second      Memory Limit: 196608 KB You are given a simple task. Given a s ...

  9. P4700 算

    P4700 算 时间: 1000ms / 空间: 125829120KiB / Java类名: Main 背景 zhx和他的妹子出去玩. 描述

  10. poj2011

    Shortest Prefixes Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 17608   Accepted: 765 ...