Javascript 多次设置背景色动画。
我试图在不同的scrolltop值上多次设置div背景色的动画。 下面是我的代码,但它只改变颜色一次(它只听第二个。) 有人能帮忙吗Javascript 多次设置背景色动画。,javascript,jquery,Javascript,Jquery,我试图在不同的scrolltop值上多次设置div背景色的动画。 下面是我的代码,但它只改变颜色一次(它只听第二个。) 有人能帮忙吗 $(window).scroll(function() { if($(window).scrollTop() >=200){ $('#div01').stop().animate({ backgroundColor: "#fff" },500); } else{
$(window).scroll(function() {
if($(window).scrollTop() >=200){
$('#div01').stop().animate({ backgroundColor: "#fff" },500);
}
else{
$('#div01').stop().animate({ backgroundColor: "#333" },500);
}
});
$(window).scroll(function() {
if($(window).scrollTop() >=500){
$('#div01').stop().animate({ backgroundColor: "#777" },500);
}
else{
$('#div01').stop().animate({ backgroundColor: "#fff" },500);
}
});
为您的第一个
if
提供另一个条件,以检查$(窗口)。scrollTop()
小于500
:
if($(window).scrollTop() >=200 && $(window).scrollTop() < 500){
$('#div01').stop().animate({ backgroundColor: "#fff" },500);
}
else{
$('#div01').stop().animate({ backgroundColor: "#333" },500);
}
if($(窗口).scrollTop()>=200&&$(窗口).scrollTop()<500){
$('div01').stop().animate({backgroundColor:'fff'},500);
}
否则{
$('#div01').stop().animate({backgroundColor:“#333”},500);
}
为您的第一个if
提供另一个条件,以检查$(窗口)。scrollTop()
小于500
:
if($(window).scrollTop() >=200 && $(window).scrollTop() < 500){
$('#div01').stop().animate({ backgroundColor: "#fff" },500);
}
else{
$('#div01').stop().animate({ backgroundColor: "#333" },500);
}
if($(窗口).scrollTop()>=200&&$(窗口).scrollTop()<500){
$('div01').stop().animate({backgroundColor:'fff'},500);
}
否则{
$('#div01').stop().animate({backgroundColor:“#333”},500);
}
为您的第一个if
提供另一个条件,以检查$(窗口)。scrollTop()
小于500
:
if($(window).scrollTop() >=200 && $(window).scrollTop() < 500){
$('#div01').stop().animate({ backgroundColor: "#fff" },500);
}
else{
$('#div01').stop().animate({ backgroundColor: "#333" },500);
}
if($(窗口).scrollTop()>=200&&$(窗口).scrollTop()<500){
$('div01').stop().animate({backgroundColor:'fff'},500);
}
否则{
$('#div01').stop().animate({backgroundColor:“#333”},500);
}
为您的第一个if
提供另一个条件,以检查$(窗口)。scrollTop()
小于500
:
if($(window).scrollTop() >=200 && $(window).scrollTop() < 500){
$('#div01').stop().animate({ backgroundColor: "#fff" },500);
}
else{
$('#div01').stop().animate({ backgroundColor: "#333" },500);
}
if($(窗口).scrollTop()>=200&&$(窗口).scrollTop()<500){
$('div01').stop().animate({backgroundColor:'fff'},500);
}
否则{
$('#div01').stop().animate({backgroundColor:“#333”},500);
}
我感觉第二个$(窗口).scroll()
正在覆盖第一个。下面的代码应该可以工作
$(window).scroll(function() {
if($(window).scrollTop() >= 500){
$('#div01').stop().animate({ backgroundColor: "#777" },500);
}
else if($(window).scrollTop() >=200){
$('#div01').stop().animate({ backgroundColor: "#fff" },500);
}
else{
$('#div01').stop().animate({ backgroundColor: "#333" },500);
}
});
无论如何,这是您的代码的一个更加枯燥的版本。我感觉您的第二个
$(窗口).scroll()
正在覆盖第一个。下面的代码应该可以工作
$(window).scroll(function() {
if($(window).scrollTop() >= 500){
$('#div01').stop().animate({ backgroundColor: "#777" },500);
}
else if($(window).scrollTop() >=200){
$('#div01').stop().animate({ backgroundColor: "#fff" },500);
}
else{
$('#div01').stop().animate({ backgroundColor: "#333" },500);
}
});
无论如何,这是您的代码的一个更加枯燥的版本。我感觉您的第二个
$(窗口).scroll()
正在覆盖第一个。下面的代码应该可以工作
$(window).scroll(function() {
if($(window).scrollTop() >= 500){
$('#div01').stop().animate({ backgroundColor: "#777" },500);
}
else if($(window).scrollTop() >=200){
$('#div01').stop().animate({ backgroundColor: "#fff" },500);
}
else{
$('#div01').stop().animate({ backgroundColor: "#333" },500);
}
});
无论如何,这是您的代码的一个更加枯燥的版本。我感觉您的第二个
$(窗口).scroll()
正在覆盖第一个。下面的代码应该可以工作
$(window).scroll(function() {
if($(window).scrollTop() >= 500){
$('#div01').stop().animate({ backgroundColor: "#777" },500);
}
else if($(window).scrollTop() >=200){
$('#div01').stop().animate({ backgroundColor: "#fff" },500);
}
else{
$('#div01').stop().animate({ backgroundColor: "#333" },500);
}
});
无论如何,这是您的代码的一个更加枯燥的版本。谢谢您felix。它工作!!!但当我滚动到顶部时,它不会变回我开始使用的第一种颜色。有什么建议吗?因为当
$(window.scrollTop()
小于200
时,您没有任何要检查的条件。你应该增加另一个条件来实现它谢谢你felix。它工作!!!但当我滚动到顶部时,它不会变回我开始使用的第一种颜色。有什么建议吗?因为当$(window.scrollTop()
小于200
时,您没有任何要检查的条件。你应该增加另一个条件来实现它谢谢你felix。它工作!!!但当我滚动到顶部时,它不会变回我开始使用的第一种颜色。有什么建议吗?因为当$(window.scrollTop()
小于200
时,您没有任何要检查的条件。你应该增加另一个条件来实现它谢谢你felix。它工作!!!但当我滚动到顶部时,它不会变回我开始使用的第一种颜色。有什么建议吗?因为当$(window.scrollTop()
小于200
时,您没有任何要检查的条件。您应该添加另一个条件,通过一些重构来实现它。您甚至可以添加额外的优化,以便在没有更改(并且不需要触发动画)的情况下进行重构。您甚至可以添加额外的优化,以便在没有更改(并且不需要触发动画)的情况下进行重构。您甚至可以添加额外的优化,以便在没有更改(并且不需要触发动画)的情况下进行重构。您甚至可以在没有更改(并且不需要触发动画)的情况下添加额外的优化