Javascript 如果不满足条件,如何从主体中移除类?
我正在使用if语句根据特定条件显示警报消息 在第二个条件下,Javascript 如果不满足条件,如何从主体中移除类?,javascript,if-statement,Javascript,If Statement,我正在使用if语句根据特定条件显示警报消息 在第二个条件下,新文章我希望添加一个特定的css类(显示横幅警报)。我能够得到css添加,但它现在影响的条件下,它 我曾尝试添加一个$(“body”).removeClass,并添加了一个具有不同属性的新类,但我无法成功摆脱第一个类 这是我的密码: $(window).on("load", function(e) { $('.preloader').fadeOut('slow'); if (document.cookie.includes("
新文章
我希望添加一个特定的css类(显示横幅警报)
。我能够得到css添加,但它现在影响的条件下,它
我曾尝试添加一个$(“body”).removeClass
,并添加了一个具有不同属性的新类,但我无法成功摆脱第一个类
这是我的密码:
$(window).on("load", function(e) {
$('.preloader').fadeOut('slow');
if (document.cookie.includes("isDismissed=true")) {
document.body.classList.add("alert.container");
} else if ("@pageTitle" === ("New Article") !== "-1") {
document.body.classList.add("show-banner-alert");
} else if ("@pageTitle".indexOf("Test") !== "-1") {
$("body").removeClass("show-banner-alert").addClass("show-alert");
} else if ("@pageTitle".indexOf("New Home") !== "-1") {
document.body.classList.add("show-alert");
}
});
第一:
没有一个条件是正确的。
所有的if条件都会给你一个正确的答案(true)。
第二:
尝试使用jquery或vanilla js进行dom操作。(我建议使用jquery)。你忘了一个
)
这里:$(“body”).removeClass(“显示横幅警报”).addClass(“显示警报”);
可能就是这个问题吗?链接中未关闭的括号?$(“body”).removeClass(“显示横幅警报”).addClass(“显示警报”);我关闭了)
但是第二个条件仍然是获得css属性show banner alert
而不是show alert
,这里有jQuery和直接DOM的独特组合。。。我会选择一个并坚持下去,这样以后的开发人员就不会感到困惑了<代码>document.body.classList.remove(“显示横幅警报”);document.body.classList.add(“显示警报”)代码>第二个条件没有任何意义;字符串“New Article”永远不会等于字符串“-1”…您只使用!==-1当您使用.indexOf()
时。如果您想进行精确匹配,只需编写If(“@pageTitle”=“New Article”)