修改 Class 而不是 Style
我在不久前做过一个导航栏,要求其滚动到屏幕顶端后固定。很常见。开始的时候没问题,很快就可以搞定。
nav {
position: absolute;
top: 60px;
}
var scroll=0;
var nav=$("nav");
var navST=60; //该元素距离网页顶端60px
$(window).scroll(function(){
if($(document).scrollTop()>navST && scroll==0){
nav.css({position: "fixed",top: "0"});
scroll=1;
}
else if($(document).scrollTop()navST && scroll==0){
nav.addClass("fixed");
scroll=1;
}
else if($(document).scrollTop()navST && scroll==0){
document.getElementsByTagName("nav")[0].classList.add("fixed");
scroll=1;
}
else if(document.documentElement.scrollTop || document.body.scrollTop |