我的脚本有点抖动。让我们说这是一个距离浏览器顶部25px的元素,当我继续向下滚动时。在我的浏览器顶部触及之前,该元素不会变为position:fixed;
。然后当我向下滚动时,该元素将会跟随。然而,当我向后滚动到顶部时,该抖动就会出现,该元素将跟随到我的页面顶部,然后它将自身重置回其原始位置(距离顶部25px)。
有没有办法去除抖动?
谢谢!
这是我的jquery脚本:
$(function() {
var a = function() {
var b = $(window).scrollTop();
var d = $("#notification-anchor").offset({scroll:false}).top;
var c = $("#notification");
if (b > d) {
c.css({position:"fixed",top:"0px"})
} else {
if(b<=d){
c.css({position:"relative"})
}
}
};
$(window).scroll(a);a()
});
答案 0 :(得分:5)
尝试使用以下代码。 .toolsbar 会像GMail工具栏一样贴在页面顶部。你想要的吗?
$(function() {
var $sidebar = $('.toolsbar');
$window = $(window);
offset = $sidebar.offset();
topPadding = 0;
$window.scroll(function() {
if ($window.scrollTop() > offset.top) {
$sidebar.css({
'top': '0',
'position': 'fixed'
});
} else {
$sidebar.css({
'top': '',
'position': ''
});
}
});
});