Jquery 如果不起作用
Jquery if doesn't work
我的 jquery 代码有问题。问题是当添加 class night_day 时立即开始下一个 if。我该如何解决?感谢您的回答。
$(document).ready(function(){
$( "#light_switch" ).click(function() {
if ( $( this ).hasClass( "day_night" ) ) {
$(".logo").css("background-image", "url('img/CH_logo_web_white.png')");
$("body").css("background-color", "#374356");
$("body").css("color", "#8c8c8c");
$(".info h2").css("color", "#d1d1d1");
$(".shoot-left .desc h2").css("color", "#8c8c8c");
$(".shoot-right .desc h2").css("color", "#8c8c8c");
$("#footer p").css("color", "#d1d1d1");
$("#light_switch").removeClass("day_night").addClass("night_day");
}
if ( $( this ).hasClass( "night_day" ) ) {
$(".logo").css("background-image", "url('img/CH_logo_web_white.png')");
$("body").css("background-color", "#FFFFFF");
$("body").css("color", "#8c8c8c");
$(".info h2").css("color", "#d1d1d1");
$(".shoot-left .desc h2").css("color", "#404040");
$(".shoot-right .desc h2").css("color", "#404040");
$("#footer p").css("color", "#8c8c8c");
$("#light_switch").removeClass("night_day").addClass("day_night");
}
});
});
<div id="light_switch" class="day_night"></div>
尝试使用toggleClass喜欢,
$( "#light_switch" ).click(function() {
if ( $( this ).hasClass( "day_night" ) ) {
$(".logo").css("background-image", "url('img/CH_logo_web_white.png')");
$("body").css("background-color", "#374356");
$("body").css("color", "#8c8c8c");
$(".info h2").css("color", "#d1d1d1");
$(".shoot-left .desc h2").css("color", "#8c8c8c");
$(".shoot-right .desc h2").css("color", "#8c8c8c");
$("#footer p").css("color", "#d1d1d1");
}
if ( $( this ).hasClass( "night_day" ) ) {
$(".logo").css("background-image", "url('img/CH_logo_web_white.png')");
$("body").css("background-color", "#FFFFFF");
$("body").css("color", "#8c8c8c");
$(".info h2").css("color", "#d1d1d1");
$(".shoot-left .desc h2").css("color", "#404040");
$(".shoot-right .desc h2").css("color", "#404040");
$("#footer p").css("color", "#8c8c8c");
}
// use toggleClass after if-else condition
$("#light_switch").toggleClass("day_night night_day");
});
您可以通过合并选择器来缩短您的代码,例如,
$(".logo").css("background-image", "url('img/CH_logo_web_white.png')");
$("body").css({"background-color":"#374356","color":"#8c8c8c"});
$(".shoot-left .desc h2, .shoot-right .desc h2").css("color", "#8c8c8c");
$("#footer p,.info h2").css("color", "#d1d1d1");
你可以使用else if
$(document).ready(function(){
$( "#light_switch" ).click(function() {
if ( $( this ).hasClass( "day_night" ) ) {
$(".logo").css("background-image", "url('img/CH_logo_web_white.png')");
$("body").css("background-color", "#374356");
$("body").css("color", "#8c8c8c");
$(".info h2").css("color", "#d1d1d1");
$(".shoot-left .desc h2").css("color", "#8c8c8c");
$(".shoot-right .desc h2").css("color", "#8c8c8c");
$("#footer p").css("color", "#d1d1d1");
$("#light_switch").removeClass("day_night").addClass("night_day");
}
else if ( $( this ).hasClass( "night_day" ) ) {
$(".logo").css("background-image", "url('img/CH_logo_web_white.png')");
$("body").css("background-color", "#FFFFFF");
$("body").css("color", "#8c8c8c");
$(".info h2").css("color", "#d1d1d1");
$(".shoot-left .desc h2").css("color", "#404040");
$(".shoot-right .desc h2").css("color", "#404040");
$("#footer p").css("color", "#8c8c8c");
$("#light_switch").removeClass("night_day").addClass("day_night");
}
});
});
我的 jquery 代码有问题。问题是当添加 class night_day 时立即开始下一个 if。我该如何解决?感谢您的回答。
$(document).ready(function(){
$( "#light_switch" ).click(function() {
if ( $( this ).hasClass( "day_night" ) ) {
$(".logo").css("background-image", "url('img/CH_logo_web_white.png')");
$("body").css("background-color", "#374356");
$("body").css("color", "#8c8c8c");
$(".info h2").css("color", "#d1d1d1");
$(".shoot-left .desc h2").css("color", "#8c8c8c");
$(".shoot-right .desc h2").css("color", "#8c8c8c");
$("#footer p").css("color", "#d1d1d1");
$("#light_switch").removeClass("day_night").addClass("night_day");
}
if ( $( this ).hasClass( "night_day" ) ) {
$(".logo").css("background-image", "url('img/CH_logo_web_white.png')");
$("body").css("background-color", "#FFFFFF");
$("body").css("color", "#8c8c8c");
$(".info h2").css("color", "#d1d1d1");
$(".shoot-left .desc h2").css("color", "#404040");
$(".shoot-right .desc h2").css("color", "#404040");
$("#footer p").css("color", "#8c8c8c");
$("#light_switch").removeClass("night_day").addClass("day_night");
}
});
});
<div id="light_switch" class="day_night"></div>
尝试使用toggleClass喜欢,
$( "#light_switch" ).click(function() {
if ( $( this ).hasClass( "day_night" ) ) {
$(".logo").css("background-image", "url('img/CH_logo_web_white.png')");
$("body").css("background-color", "#374356");
$("body").css("color", "#8c8c8c");
$(".info h2").css("color", "#d1d1d1");
$(".shoot-left .desc h2").css("color", "#8c8c8c");
$(".shoot-right .desc h2").css("color", "#8c8c8c");
$("#footer p").css("color", "#d1d1d1");
}
if ( $( this ).hasClass( "night_day" ) ) {
$(".logo").css("background-image", "url('img/CH_logo_web_white.png')");
$("body").css("background-color", "#FFFFFF");
$("body").css("color", "#8c8c8c");
$(".info h2").css("color", "#d1d1d1");
$(".shoot-left .desc h2").css("color", "#404040");
$(".shoot-right .desc h2").css("color", "#404040");
$("#footer p").css("color", "#8c8c8c");
}
// use toggleClass after if-else condition
$("#light_switch").toggleClass("day_night night_day");
});
您可以通过合并选择器来缩短您的代码,例如,
$(".logo").css("background-image", "url('img/CH_logo_web_white.png')");
$("body").css({"background-color":"#374356","color":"#8c8c8c"});
$(".shoot-left .desc h2, .shoot-right .desc h2").css("color", "#8c8c8c");
$("#footer p,.info h2").css("color", "#d1d1d1");
你可以使用else if
$(document).ready(function(){
$( "#light_switch" ).click(function() {
if ( $( this ).hasClass( "day_night" ) ) {
$(".logo").css("background-image", "url('img/CH_logo_web_white.png')");
$("body").css("background-color", "#374356");
$("body").css("color", "#8c8c8c");
$(".info h2").css("color", "#d1d1d1");
$(".shoot-left .desc h2").css("color", "#8c8c8c");
$(".shoot-right .desc h2").css("color", "#8c8c8c");
$("#footer p").css("color", "#d1d1d1");
$("#light_switch").removeClass("day_night").addClass("night_day");
}
else if ( $( this ).hasClass( "night_day" ) ) {
$(".logo").css("background-image", "url('img/CH_logo_web_white.png')");
$("body").css("background-color", "#FFFFFF");
$("body").css("color", "#8c8c8c");
$(".info h2").css("color", "#d1d1d1");
$(".shoot-left .desc h2").css("color", "#404040");
$(".shoot-right .desc h2").css("color", "#404040");
$("#footer p").css("color", "#8c8c8c");
$("#light_switch").removeClass("night_day").addClass("day_night");
}
});
});