jquery 怎么判断 某个div 是不是进入可视区域,或者是滚动条拖拽到某个位置时,出发某个事件!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery 怎么判断 某个div 是不是进入可视区域,或者是滚动条拖拽到某个位置时,出发某个事件!相关的知识,希望对你有一定的参考价值。

蝶舞and飘雪
我就是想像lazyload那样,lazyloading是滚动条到某个位置时显示图片,将图片路径放入src属性中,我想要的效果就是,滚动条拖动时,某个div进入浏览器可视区域,之后触发某个事件。

根据div的top和滚动条top判断,参照lazyload做了个demo如下
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script language="javascript" src="/js/jquery-1.4.4.js" type="text/javascript"></script>
<script language="javascript" type="text/javascript">
<!--//
$(document).ready(function()
$(window).bind("scroll", function(event)
$("div").each(function()
var fold = $(window).height() + $(window).scrollTop();
if( fold <= $(this).offset().top)
$(this).trigger("appear");

);
);

$("div").each(function()
if( $(window).height() > $(this).offset().top)
$(this).html("出现在可视区域");

$(this).one("appear",function()
$(this).html("出现在可视区域");
);
);
);
//-->
</script>
</head>

<body>
<div>111</div>
<div>1111</div>
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<div showed = "N">111111111111</div>
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />

<div showed = "N">111111111111</div>
</body>
</html>
参考技术A 获取滚动条的当前位置,这个通常是用来加载图片用的,也就是在不在显示区域(或者离显示区域一定距离外)图片不在载。 参考技术B 你想干啥 我觉的可以根据鼠标的位置来 试试

以上是关于jquery 怎么判断 某个div 是不是进入可视区域,或者是滚动条拖拽到某个位置时,出发某个事件!的主要内容,如果未能解决你的问题,请参考以下文章

jquery怎么判断页面中是不是存在某元素

jQuery 怎么判断DIV出现在可视区域

JQuery判断DIV中是不是包含图片标签

JQuery判断DIV中是不是包含图片标签

如何判断一个元素是不是在可视区域内

jquery怎么判断是不是有某个元素