jq

获取浏览器显示区域(可视区域)的高度 :
$(window).height();
获取浏览器显示区域(可视区域)的宽度 :
$(window).width();
获取页面的文档高度
$(document).height();
获取页面的文档宽度 :
$(document).width();
浏览器当前窗口文档body的高度:
$(document.body).height();
浏览器当前窗口文档body的宽度:
$(document.body).width();
获取滚动条到顶部的垂直高度 (即网页被卷上去的高度)
$(document).scrollTop();
获取滚动条到左边的垂直宽度 :
$(document).scrollLeft();
获取或设置元素的宽度:
$(obj).width();
获取或设置元素的高度:
$(obj).height();
某个元素的上边界到body最顶部的距离:obj.offset().top;(在元素的包含元素不含滚动条的情况下)
某个元素的左边界到body最左边的距离:obj.offset().left;(在元素的包含元素不含滚动条的情况下)
返回当前元素的上边界到它的包含元素的上边界的偏移量:obj.offset().top(在元素的包含元素含滚动条的情况下)
返回当前元素的左边界到它的包含元素的左边界的偏移量:obj.offset().left(在元素的包含元素含滚动条的情况下)

js:

 网页被卷起来的高度/宽度(即浏览器滚动条滚动后隐藏的页面内容高度)

document.documentElement.scrollTop //firefox

document.documentElement.scrollLeft //firefox

document.body.scrollTop //IE

document.body.scrollLeft //IE

等同于:

$(window).scrollTop()

$(window).scrollLeft()

网页工作区域的高度和宽度  

document.documentElement.clientHeight// IE firefox  

等同于:

$(window).height()

元素距离文档顶端和左边的偏移值  

 obj.offsetTop //IE firefox

 obj.offsetLeft //IE firefox

等同于:

obj.offset().top

 obj.offset().left

简单实例(监控元素在可见视图中)

  效果:当元素出现在可见区域时,改变其css样式(背景色变红);

<!DOCTYPE html>
<html> <head>
<meta charset="UTF-8">
<title>监控元素出现在视图中</title>
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<style>
p {
height: 30px;
line-height: 30px;
background: #f3f3f3;
opacity: ;
}
</style>
</head> <body>
<div class="main">
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
<p>你好,china!</p>
</div>
</body>
<script>
function Show() {
var Height = $(window).height();
$('p').not('.none').each(function(ind) {
var Top = $(this).offset().top; //元素距离顶部距离
var scroll = $(document).scrollTop(); //滚动高度
console.log(Top + ' ' + scroll);
if(Top - Height - scroll <= ) {
setTimeout(function() {
$('p').not('.none').eq(ind).addClass('show').css('background', 'red').animate({
opacity:
}, );
}, );
}
});
}
$(function() {
var Height = $(window).height(); //窗口高度
console.log('可视高度:' + Height);
$('.main').find('*').each(function() {
var Top = $(this).offset().top;
if(Top - Height <= ) {
$(this).addClass('none').css({
'background': '#09f',
'opacity':
});
}
});
$(window).scroll(function() {
Show();
})
})
</script> </html>

js获取元素的滚动高度,和距离顶部的高度的更多相关文章

  1. js获取元素到屏幕左上角的距离

    开发过程中经常会遇到 获取元素到屏幕左上角的距离, 当我们使用jQuery开发时,我们可以使用 $.offset()来获取准确的距离. 如果我们的项目中并没有引入jQuer的话,跟希望通过原生方法实现 ...

  2. JQ的offset().top与JS的getBoundingClientRect区别详解,JS获取元素距离视窗顶部可变距离

     壹 ❀ 引 我在 JQ的offset().top与js的offsetTop区别详解 这篇博客中详细分析了JQ方法offset().top与JS属性offsetTop的区别,并得出了一条offset( ...

  3. js计算元素距离顶部的高度及元素是否在可视区判断

    前言: 在业务当中,我们经常要计算元素的大小和元素在页面的位置信息.比如说,在一个滚动区域内,我要知道元素A是在可视区内,还是在隐藏内容区(滚动到外边看不到了).有时还要进一步知道,元素是全部都显示在 ...

  4. 【全面总结】js获取元素位置大小

    [js获取元素位置+元素大小]全面总结 目录 1.关于offset offsetParent(只读) offsetTop(只读) offsetLeft(只读) offsetHeight(只读) off ...

  5. js获取元素位置和style的兼容性写法

    今天说一下js获取元素位置和style的方法.当然不只是element.style那么简单.. 主角:getBoundingClientRect,getClientRects,getComputedS ...

  6. JS获取元素宽高的两种情况

    JS获取元素宽高分两种情况, 一.内联样式,也就是直接把width和height写在HTML元素中的style里: 这种情况使用     document.getElementById('xxx'). ...

  7. js获取元素提示信息

    js获取元素提示信息 var date=$("#date").attr('placeholder'); js修改元素的提示信息 $("#date").attr( ...

  8. js获取元素显示隐藏的当前状态

    js获取元素显示隐藏的当前状态 // CSS var display = $("."+cls).css("display"); if(display == &q ...

  9. js获取元素的外链样式

    一般给元素设置行内样式,如<div id="div1" style="width:500px;"></div>.如要获取它的样式,即可d ...

随机推荐

  1. MySQL取得某一范围随机数

    ①直接取值 若要在i ≤ R ≤ j 这个范围得到一个随机整数R ,需要用到表达式 FLOOR(i + RAND() * (j – i + 1)). 例如, 若要在7 到 12 的范围(包括7和12) ...

  2. linux下安装git提示”无法打开锁文件 /var/lib/dpkg/lock - open (13: 权限不够)“

    如图所示,输入命令:apt-get install git后提示权限不够 解决方法,在命令前加 sudo即可 sudo apt-get install git sudo是linux系统管理指令,是允许 ...

  3. 《android开发艺术探索》读书笔记(二)--IPC机制

    接上篇<android开发艺术探索>读书笔记(一) No1: 在android中使用多进程只有一种方法,那就是给四大组件在AndroidMenifest中指定android:process ...

  4. 【Learning】最小点覆盖(二分图匹配) 与Konig定理证明

    (附一道例题) Time Limit: 1000 ms   Memory Limit: 128 MB Description 最小点覆盖是指在二分图中,用最小的点集覆盖所有的边.当然,一个二分图的最小 ...

  5. galera断电后无法重建集群

    节点有一个测试环境,数据库用的三节点galera,测试组的同事把电源同时断了.节后回来开机,发现数据库状态一直有问题,以前遇到这种情况,都是把一个节点中的my.conf中的wsrep配置全删掉,作为一 ...

  6. Redis笔记5-redis高可用方案

    一.哨兵机制 有了主从复制的实现以后,如果想对主服务器进行监控,那么在redis2.6以后提供了一个"哨兵"的机制.顾名思义,哨兵的含义就是监控redis系统的运行状态.可以启动多 ...

  7. GAN︱生成模型学习笔记(运行机制、NLP结合难点、应用案例、相关Paper)

    我对GAN"生成对抗网络"(Generative Adversarial Networks)的看法: 前几天在公开课听了新加坡国立大学[机器学习与视觉实验室]负责人冯佳时博士在[硬 ...

  8. 如何获取Linux-gate.so.1动态库

    前面"Linux应用程序Helloworld入门"已经提到在Linux下每个可执行文件都依赖于几个最为基本的动态库,其中一个就是linux-gate.so.1. 从上面ldd给出的 ...

  9. Caused by: java.lang.NoClassDefFoundError: org/springframework/web/context/WebApplicationContext

    1.错误描述 严重: A child container failed during start java.util.concurrent.ExecutionException: org.apache ...

  10. idea好用插件(一)

    代码规范插件 Alibaba Java Coding Guidelines 安装后 可以在文件.文件夹邮件,显示编码规约扫描,点击后显示 可以通过双击定位问题代码,对某些问题可以进行快速的修复 比如: ...