1

我有一个顶部粘性菜单栏。当页面开始滚动超过 1px 时,我添加了一些 css 更改。它现在工作得很好,但是当滚动位置为 0 时我需要它改回来。感谢任何帮助。谢谢

这是js:

   $(document).scroll(function(){
if($(this).scrollTop() > 1)
{   
    $('.row-1').css({"box-shadow":"0 1px 3px rgba(0, 0, 0, 0.4)"});
 $('.row-1').css({"opacity":"0.9"});
}
});
4

2 回答 2

7

CSS:

.row-1 { /* some styles for row 1 */ }
.row-1.scrolled { 
   box-shadow: 0 1px 3px rbga(0, 0, 0, 0.4);
   opacity: 0.9;
}

然后只需切换该滚动类:

 $(document).scroll(function(){
     $('.row-1').toggleClass('scrolled', $(this).scrollTop() > 1);
 });
于 2012-11-19T15:13:14.247 回答
6

尝试这个 :

$(document).scroll(function(){
    var row = $('.row-1'), scrollTop = $(this).scrollTop();
    if(scrollTop > 1)
    {   
        row .css({"box-shadow":"0 1px 3px rgba(0, 0, 0, 0.4)"});
        row .css({"opacity":"0.9"});
    }
    else if (scrollTop <= 1)
    {
        row.css({"box-shadow":"none"});
        row.css({"opacity":"1"});
    }
});

但是您应该使用 css 类并切换它。就像 David Hedlund 的回应一样。

于 2012-11-19T15:11:35.660 回答