我想同时更改属性top
的值我滚动。
我不想使用position: fixed
。我使用position: absolute
。
每次向下滚动时,我都希望1px
添加box
。
我希望每次向上滚动时都将1px
移至box
。
怎么做?
<div id="box" style="position: absolute">
// content
</div>
$(document).bind('scroll', function(){
$("#box").css("top", ..... );
});
答案 0 :(得分:1)
你可以这样做,
$(window).on('scroll', function(){
change_box_css();
});
function change_box_css(){
//FF
$('#box').bind('DOMMouseScroll', function(e){
if(e.detail > 0) {
//scroll down -> set css top
}else {
//scroll up -> set css top
}
});
//IE, Opera, Safari
$('#box').bind('mousewheel', function(e){
if(e.wheelDelta < 0) {
//scroll down -> set css top
}else {
//scroll up -> set css top
}
});
}
现在你应该根据你的意愿设置你的css顶部
答案 1 :(得分:0)
您可以使用:
$(document).ready(function(){
$("#box").on('scroll', function(){
$(this).css('top',$(document).scrollTop());
});
});
虽然我同意你应该使用position: fixed
,除非你试图让用户在他/她滚动页面时“跟随”用户,如侧边栏或其他东西。