如图。蓝色的那块div的top值随滚动条的scrollTop值改变,但不能超过白色的那块区域,意思就是不能重叠到头部或底部的div上。请问如何实现。以下是我的代码,感觉累赘并且在IE6下无效。请高手指点
- JScript code
var top_height = document.getElementById("top").offsetHeight; var left_height = document.getElementById("left").offsetHeight; $(document).ready(function() { $(document).scroll(function() { var scroll_top = document.documentElement.scrollTop; var left_top = $("#left").offset().top; var m2_top = $("#m2").offset().top; if ((scroll_top > top_height) && (scroll_top + left_height < m2_top)) { $("#left").css({ "top": scroll_top }); } else { if (scroll_top < top_height) { $("#left").css({ "top": top_height + 20 }); } else { $("#left").css({ "top": m2_top - 10 - left_height }); } } }) })
------解决方案--------------------
给个思路给你吧 懒得写代码了!你首先获取一下头部的高度和表框的宽度,然后滚动滚动条的时候判断蓝色方块的offset().top;值是否等于头部的宽度,建议当比头部的高度大一点的时候就停止滚动!!不知道楼主是否有了解决的代码!!可以发站内邮箱
------解决方案--------------------
{
position:absolute;
top:10px;
}
听下来这个蓝的层 和 白色的层是并列的关系
所以只要放在 一个绝对为止就可以了