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

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

根据div的top和滚动条top判断,参照lazyload做了个demo如下

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 10 Transitional//EN" ">

第一种、滚动条滚动一定高度div也移动一定高度 及首先获取滚动条滚动的值即

oScroll = documentdocumentElementscrollTop||documentbodyscrollTop;

然后把这个值赋值给div的top值

还有一种就是固定定位position:fixed; 始终固定在浏览器窗口的某一位置,不管浏览器滚动条怎么滚动他还是处于浏览器窗口(注意说的是浏览器窗口而不是网页主体)的那个位置不动,这种看起来和你说的效果一样,滚动滚动条div固定浏览器窗口位置不变,然后网页主体上下移动;

不知道你说的是哪一种

<script>

function Cmd(v, height){

//下面这段用来每次点击时清除所有高亮

var table1 = documentgetElementById("table1");

var alks = table1getElementsByTagName("a");

for(var i=0; i<alkslength; i++){

alks[i]stylebackground = "";

alks[i]stylecolor = "";

}

//下面这段用来每次点击时设置对应ID的高亮

var link = documentgetElementById("tr" + v)getElementsByTagName("a");

if(linklength > 0){

var a = link[0];

astylebackground = "blue";

astylecolor = "white";

}

//下面这段用来控制滚动条

var divBox = documentgetElementById("divBox"); //左侧带滚动条的大DIV

divBoxscrollTop = height;

}

</script>

<div id="divBox" style="width:150px;height:200px;overflow-y:scroll;overflow-x:none;">

<table id="table1" style="width:100%;">

<tr id="tr1" style="height:50px;"><td><a href="javascript:void(0);">栏目1</a></td></tr>

<tr id="tr2" style="height:50px;"><td><a href="javascript:void(0);">栏目2</a></td></tr>

<tr id="tr3" style="height:50px;"><td><a href="javascript:void(0);">栏目3</a></td></tr>

<tr id="tr4" style="height:50px;"><td><a href="javascript:void(0);">栏目4</a></td></tr>

<tr id="tr5" style="height:50px;"><td><a href="javascript:void(0);">栏目5</a></td></tr>

<tr id="tr6" style="height:50px;"><td><a href="javascript:void(0);">栏目6</a></td></tr>

</table>

</div>

<div style="margin-top:30px;">

<a href="javascript:void(0);" onclick="Cmd(1,0);">跳到栏目1</a>

<a href="javascript:void(0);" onclick="Cmd(2,50);">跳到栏目2</a>

<a href="javascript:void(0);" onclick="Cmd(3,100);">跳到栏目3</a>

<a href="javascript:void(0);" onclick="Cmd(4,150);">跳到栏目4</a>

<a href="javascript:void(0);" onclick="Cmd(5,200);">跳到栏目5</a>

<a href="javascript:void(0);" onclick="Cmd(6,250);">跳到栏目6</a>

</div>

如上代码,我根据你的要求,写了个模拟效果,点击下面的链接,上面的栏目自动高亮,滚动条滚动到对应位置。

关键的地方在Cmd(v, height)这个方法的height参数上,你在地图上生成点的时候,按ID的顺序附加上高度的增量,高度的增量正是滚动条里栏目的自身高度,我这里设置的是50,你可以按需要设置自己的增量。

参考这段代码的思路,希望对你有帮助。

以上就是关于jquery 怎么判断 某个div 是否进入可视区域,或者是滚动条拖拽到某个位置时,出发某个事件!全部的内容,包括:jquery 怎么判断 某个div 是否进入可视区域,或者是滚动条拖拽到某个位置时,出发某个事件!、怎么控制div随滚动条滚动js、JS控制div滚动条位置问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9553852.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存