<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. 项目中应用到的框架和技术之二——ol3-ext

    ol3-ext有很多很丰富的效果,可以不用重复造轮子,ol3-ext示例大全:http://viglino.github.io/ol3-ext/ 在本次项目中使用到了ol3-ext的两个功能:图层管理 ...

  2. [JavaEE] Injecting Bean

    So what is a Bean, in JavaEE, any class expect Entity are Bean. One usefully thing in Bean is Depend ...

  3. cc2540 usbdongle 安装驱动失败的终极解决方法 【原创,多图】

    Ghost winxp win7系统安装CC2540 usbdongle CDC驱动程序 [重要提示] 因为非常多朋友使用Ghost系统.导致安装cdc驱动时安装不成功,出现 "INF中的服 ...

  4. Eclipse导入外部项目问题总结

     此次在项目开发过程中导入从oksvn下载的共享项目时出现几个项目在不同的IDE导入导出时的问题,为免忘记做例如以下笔记: 1 类路径问题 在Java开发中大多数的开发人员使用的IDE是MyEcl ...

  5. 利用 gnuplot_i 在你的 c 程序中调用 GNUPLOT

    这是一篇非常早曾经写的小文章,最初发表于我的搜狐博客(2008-09-23 22:55).由于自从转移到这里后,sohu 博客就不再维护了,所以把这篇文章也一起挪了过来. GNUPLOT 是一款功能强 ...

  6. uploadify3.2.1版插件在ASP.NET中的使用

    0.先去官网下载插件 下载uploadify3.2.1插件 解压后只需要一下文件: (1) jQuery.uploadify.min.js (2) uploadify.css (3) uploadif ...

  7. putty+Xmanager登陆Linux,实现图形界面操作.

  8. PCB 脱离IIS的Web应用

    在用.net Web编程中,我们写好的Web应用首选会挂在IIS上面,因为它足稳定并且功能齐全,但这不是我们唯一的选择,微软给我们提供了Owin组件,Web应该的宿主可以不再是IIS了,有了Owin后 ...

  9. E20171011-hm

    Rendering engine  渲染引擎; 引擎; 绘图引擎; interactive   adj. 互动的; 互相作用的,相互影响的; [计] 交互式的; defer   vt. 使推迟; 使延 ...

  10. akka设计模式系列-actor锚定

    actor锚定模式是指使用actorSelection对acor进行锚定的设计模式,也可以说是一个对actor的引用技巧.在某些情况下,我们可能需要能够根据Actor的path锚定对应的实例.简单来说 ...