
根据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滚动条位置问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)