jquery在滚动时改变不透明度和高度

我正在尝试写一些小js。 我的导航将渐变设置为背景。 当我向下滚动一定量时,我希望背景改变高度,从渐变到平面颜色,0.85不透明度(动画)。

这是我的js代码

$(window).scroll(function(){ if ($(window).scrollTop() >= 600){ $('#navigation').css({height: '92px'}); } else { $('#navigation').css({height: '142px'}); } }); 

这是css

 #navigation { height: 142px; width: 1350px; position: fixed; z-index: 2000; background: -moz-linear-gradient(top, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0) 100%); /* FF3.6+ */ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0.75)), color-stop(100%,rgba(0,0,0,0))); /* Chrome,Safari4+ */ background: -webkit-linear-gradient(top, rgba(0,0,0,0.75) 0%,rgba(0,0,0,0) 100%); /* Chrome10+,Safari5.1+ */ background: -o-linear-gradient(top, rgba(0,0,0,0.75) 0%,rgba(0,0,0,0) 100%); /* Opera 11.10+ */ background: -ms-linear-gradient(top, rgba(0,0,0,0.75) 0%,rgba(0,0,0,0) 100%); /* IE10+ */ background: linear-gradient(to bottom, rgba(0,0,0,0.75) 0%,rgba(0,0,0,0) 100%); /* W3C */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#bf000000', endColorstr='#00000000',GradientType=0 ); /* IE6-9 */ 

}

希望可以有人帮帮我

你的代码很好!!

只需创建两个单独的类并替换$('#navigation').css({height: '92px'}); 通过$('#navigation').addClass("flatColored");$('#navigation').removeClass("flatColored"); 在’其他’。

而不是在你的CSS中使用#navigation{ ...} ,使用.gradientColored{...} .flatcolored{...}

并在你的HTML:

覆盖’flatColored类中的background属性。

根据您的代码在chrome上测试。 工作良好 !