您当前的位置:主页 > 教程合集 > Html/css > 网站首页Html/css
网页侧栏浮动固定但不遮住底部的js实现方法
发布时间:2016-01-29 10:24:11编辑:余斗阅读:(0)字号: 大 中 小
余斗的博客模版是仿杨青个人博客的,用过一段时间,发现侧边栏有个不好的地方就是,导航这块固定虽然是浮动固定,但是不是自动吸顶,这样会有个很大的空白间距,显得不是很好看。
余斗就给这里做出一个细节上的调整,实现侧栏指定div块吸顶浮动固定,而且不会盖住指定高度的底部。
具体方法为:
1.在网页部分添加代码:
<!-- float div start-->
<script type="text/javascript" src="/script/jquery-1.4.2.min.js"></script>
<style type ="text/css" >
.fixed {
position:fixed;
top:0px;
width:300px;
}
.fixed2 {
position:fixed;
top:-40px;
width:300px;
}
</style>
<script type="text/javascript">
jQuery(document).ready(function() {
var a = $("#floatbox").offset();
$(window).scroll(function() {
var b = $(window).scrollTop();
if (b > a.top) {
if((b + 600 + 200) < document.body.parentNode.scrollHeight)
$("#floatdiv").addClass("fixed");
else
$("#floatdiv").addClass("fixed2");
} else {
$("#floatdiv").removeClass("fixed");
$("#floatdiv").removeClass("fixed2");
}
});
});
</script>
<!-- float div end-->
代码注释:
一定记得引入jquer文件,这个一般的网页应该都引入了,不为必须,其中js代码可以直接放入js文件中。
top:0px; 这个是漂浮层距离网页顶部的位置
width:300px; 这个是漂浮层的宽度
top:-40px; 这个是漂浮层距离网页顶部的位置
if((b + 600 + 200) < document.body.parentNode.scrollHeight);600是漂浮层的高度,200是网页底部的高度。
2.在需要浮动固定的地方假如代码:
<div id="floatbox" >
<div id="floatdiv">
<ul>
<li><a href="#" target="_blank">这里是需要固定的内容</a></li>
<li><a href="#" target="_blank">这里是需要固定的内容</a></li>
<li><a href="#" target="_blank">这里是需要固定的内容</a></li>
<li><a href="#" target="_blank">这里是需要固定的内容</a></li>
</ul>
</div>
</div>
这样就完美实现侧栏浮动固定而且不会遮住底部了,我们在网页设计中侧栏固定的用途非常广泛,可以是固定导航,可以是固定部分文章,也可以是固定对话窗口,而更为常见的是固定广告层。这个大家根据需要选择即可。
下一篇:为博客logo添加一个扫光的特效