我正在使用一个非常简单的代码在滚动上制作一个粘性元素。
我想让 .top 变粘,它被包裹在 .wrap 里面。当我向下滚动时,我想设置 .top 与 wrap 相关的位置(使其从左侧开始:0 与 .wrap 相关,与 body 无关。我只想将其保留在 .wrap 内。我该怎么做?谢谢。
jQuery:
var top = $('.top').offset().top;
$(window).scroll(function (event) {
var y = $(this).scrollTop();
if (y >= top){
$('.top').addClass('sticky');
}
else{
$('.top').removeClass('sticky');
}
});
CSS:
.wrap{
width: 300px;
border: 1px solid green;
margin: 0 auto;
height: 1000px;
}
.top{
background: green;
height: 100px;
}
.sticky{
position: fixed;
top: 0;
left: 0;
width: 100%;
}
演示:http: //jsfiddle.net/63cFy/