js获取页面卷曲高度兼容写法

js_5">js获取页面卷曲高度兼容写法

<!DOCTYPE=html>
<html>
<head>
<script src="js/jquery.js" type="text/javascript"></script>

   <script type="text/javascript">
    $(document).ready(function(){
        var range = 50;             //距下边界长度/单位px
        var elemt = 500;           //插入元素高度/单位px
        var maxnum = 20;            //设置加载最多次数
        var num = 1;
        var totalheight = 0; 
        var main = $("#content");                     //主体元素
        $(window).scroll(function(){
            var srollPos = $(window).scrollTop();    //滚动条距顶部距离(页面超出窗口的高度)
            
            //console.log("滚动条到顶部的垂直高度: "+$(document).scrollTop());
            //console.log("页面的文档高度 :"+$(document).height());
            //console.log('浏览器的高度:'+$(window).height());
            
            totalheight = parseFloat($(window).height()) + parseFloat(srollPos);
            if(($(document).height()-range) <= totalheight  && num != maxnum) {
                main.append("<div style='border:1px solid tomato;margin-top:20px;color:#ac"+(num%20)+(num%20)+";height:"+elemt+"' >hello world"+srollPos+"---"+num+"</div>");
                num++;
            }
        });
    });
    </script>
</head>
<body>
    <div id="content" style="height:960px">
        <div id="follow">this is a scroll test;<br/>    页面下拉自动加载内容</div>
        <div style='border:1px solid tomato;margin-top:20px;color:#ac1;height:800' >hello world test DIV</div>
        
    </div>
</body>
</html>
 window.onscroll = function (e) {
        var scrolltop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;      
        console.log(scrolltop);  //时刻打印卷曲网页离浏览器顶部的距离
    }

这样既可获得网页在浏览器中卷曲的高度为多少

1.jquery获取操作

var Height=$(window).height()  //网页可视区的高度

var  hidtop=$(document).scrollTop( );//  获取网页被卷曲的高度

2.拓展
网页可见区域宽: document.body.clientWidth;
网页可见区域高: document.body.clientHeight;
网页可见区域宽: document.body.offsetWidth (包括边线的宽);
网页可见区域高: document.body.offsetHeight (包括边线的宽);
网页正文全文宽: document.body.scrollWidth;
网页正文全文高: document.body.scrollHeight;
网页被卷去的高: document.body.scrollTop;
网页被卷去的左: document.body.scrollLeft;
网页正文部分上: window.screenTop;
网页正文部分左: window.screenLeft;
屏幕分辨率的高: window.screen.height;
屏幕分辨率的宽: window.screen.width;
屏幕可用工作区高度: window.screen.availHeight;
屏幕可用工作区宽度:window.screen.availWidth;

scrollHeight: 获取对象的滚动高度。
scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离
scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离
scrollWidth:获取对象的滚动宽度
offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度
offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置
offsetTop:获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置
event.clientX 相对文档的水平座标
event.clientY 相对文档的垂直座标

event.offsetX 相对容器的水平坐标
event.offsetY 相对容器的垂直坐标
document.documentElement.scrollTop 垂直方向滚动的值
event.clientX+document.documentElement.scrollTop 相对文档的水平座标+垂直方向滚动的量

要获取当前页面的滚动条纵坐标位置,用:
document.documentElement.scrollTop;
而不是:
document.body.scrollTop;
documentElement 对应的是 html 标签,而 body 对应的是 body 标签

document.body.scrollTop与document.documentElement.scrollTop两者有个特点,就是同时只会有一个值生效。比如document.body.scrollTop能取到值的时候,document.documentElement.scrollTop就会始终为0;反之亦然。所以,如果要得到网页的真正的scrollTop值,可以这样:

var scrollTop=document.body.scrollTop+document.documentElement.scrollTop;

这两个值总会有一个恒为0,所以不用担心会对真正的scrollTop造成影响。一点小技巧,但很实用。


http://www.niftyadmin.cn/n/1837100.html

相关文章

自动识别判断url中的中文参数是GB2312还是Utf-8编码

先看下面两个Url&#xff0c;他们传递的参数一样么&#xff1f;aaa.aspx?tag.net%bc%bc%ca%f5aaa.aspx?tag.net%e6%8a%80%e6%9c%af看起来好像是不一样&#xff0c;其实他们都是对".net技术"进行了UrlEncode&#xff0c;不过一个是GB2312的编码&#xff0c;一个是Ut…

区分 ios与安卓

1.自动辨别ios端还是安卓端代码 var u navigator.userAgent;var isAndroid u.indexOf(Android) > -1 || u.indexOf(Adr) > -1; //android终端var isiOS !!u.match(/\(i[^;];( U;)? CPU.Mac OS X/); //ios终端if(isAndroid ){ //会自动判断 结果为 布尔值}

日期+流水号生成序列

CREATE TABLE sequence (name varchar(255) NOT NULL DEFAULT ,current_value int(11) DEFAULT NULL,increment int(11) DEFAULT NULL,PRIMARY KEY (name) ) ENGINEInnoDB DEFAULT CHARSETutf8 ROW_FORMATCOMPACT; BEGINDECLARE rValue VARCHAR(50);/*返回值201208080001*/DECL…

登录时提示 未找到匹配url和请求方式的路由_不求甚解系列,快速上手python Django框架3.0(二)编写URL...

简要回顾一下上一期我们提到了Django的MTV模式&#xff0c;这期我们在讲MTV前先看来看如何配置URL。URL配置是链接用户请求和MTV模型之间的桥梁&#xff0c;先看下图编写URLURL&#xff08;Uniform Resource Locator&#xff0c;统一资源定位符&#xff09;是对可以从互联网上得…

rem适配移动端

rem布局 的适配 &#xff1f; ***类似做不同屏幕尺寸的适配 设置根字体节点大小即可 特殊屏幕均可单独做适配*** mediascreen and (max-width: 320px) { body{font-size: 14px;} }mediascreen and (min-width: 321px) and (max-width: 413px) { body{font-size: 16px;} }med…

_tmain与main,winMain,wmain收藏

用过C言语的人都知道每一个C的程序都会有一个main函数&#xff0c; 但有时看别人写的程序却出现了_tmain&#xff0c;会感动很困惑。 我当时也是很困惑&#xff0c;于是上网找资料看。 现在将我得到的结果总结一下。因为并没有什么根据&#xff0c; 如果有误。欢迎指正&#xf…

mysql主从复制高可用_MySQL 高可用之主从复制

MySQL主从复制简介Mysql的主从复制方案&#xff0c;都是数据传输的&#xff0c;只不过MySQL无需借助第三方工具&#xff0c;而是自带的同步复制功能&#xff0c;MySQL的主从复制并不是磁盘上文件直接同步&#xff0c;而是将binlog日志发送给从库&#xff0c;由从库将binlog文件…

好用js的弹框插件 dialog

dialog 弹框插件 代码示例 注 : 只需要引入css js即可 特殊样式自定义即可http://www.17sucai.com/preview/367454/2018-06-27/A24TG4TWRF/dist/mDialogMin.jshttp://www.17sucai.com/preview/367454/2018-06-27/A24TG4TWRF/dist/dialog.css <!DOCTYPE html> <html&…