jquery效果:DIV随浏览器滚动条上下移动

jquery效果:DIV随浏览器滚动条上下移动,第1张

这个不难弄···

事先获取div的offset和它的高度··然后加起来··然后你在$(window)scroll(function(){});中判断当前滚动的高度是否等于高度+offsettop·如果等于的话·你就把div设置为position:fixed;

然后再给它一个top就可以了

代码:\x0d\•$(function(){\x0d\\x0d\•//获取要定位元素距离浏览器顶部的距离\x0d\\x0d\•var navH = $("nav")offset()top;\x0d\\x0d\•//滚动条事件\x0d\\x0d\•$(window)scroll(function(){\x0d\\x0d\•//获取滚动条的滑动距离\x0d\\x0d\•var scroH = $(this)scrollTop();\x0d\\x0d\•//滚动条的滑动距离大于等于定位元素距离浏览器顶部的距离,就固定,反之就不固定\x0d\\x0d\•if(scroH>=navH){\x0d\\x0d\•$("nav")css({"position":"fixed","top":0});\x0d\\x0d\•}else if(scroH回答于 2022-11-16

divscrollHeight

就可以了。

但是这里有个问题,如果内容撑出去了,那么这个scrollHeight就是内容的高度,

如果内容高度没有div的高度高的话,scrollHeight的值就是div的高。

<!DOCTYPE html>

<html>

<head>

<meta ;

给你HTML代码你试一下,我设定的是body高度3000,在1500的地方停止跟随滚动条

这个jquery应该可以娶到的。给你一个实例,注意自己添加jquery文件哈

<script language='javascript'>  

$(function(){

$("#adds")click(function(){

$("#xx")append("<h2>添加内容</h2>");

});

$("#geth")click(function(){

vh=$("#xx")height();

$("#xx")prepend("<h2>我的高度为:"+vh+"</h2>")

});

}); 

</script>

<div style="width:200px; height:200px; display:block; overflow-y:scroll">

<div id="xx">

sdfsdfs

sdfsdf

sdfsdf

</div>

</div>

<a href="javascript:;" id="adds">点击给XX里面添加内容</a>

<a href="javascript:;" id="geth">点击获取xx的高度</a>

我给我你解释一下吧

你右上角是浏览器

右上角显示的是你body的宽度(这个宽度是不包括滚动条的)

$(window)width()

获取的是浏览器的宽度

(这个宽度包括滚动条)

正常情况下这两个宽度相差12像素,也就是一个滚动条的

宽度

以上就是关于jquery效果:DIV随浏览器滚动条上下移动全部的内容,包括:jquery效果:DIV随浏览器滚动条上下移动、使用js或jq控制一个div,当滚动到页面顶部的时候固定在顶部,离开可继续滚动吗、js 或jquery 怎么获取div的scrollHeight等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/web/10178176.html

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

发表评论

登录后才能评论

评论列表(0条)

保存