Javascript 如果不满足条件,如何从主体中移除类?

Javascript 如果不满足条件,如何从主体中移除类?,javascript,if-statement,Javascript,If Statement,我正在使用if语句根据特定条件显示警报消息 在第二个条件下,新文章我希望添加一个特定的css类(显示横幅警报)。我能够得到css添加,但它现在影响的条件下,它 我曾尝试添加一个$(“body”).removeClass,并添加了一个具有不同属性的新类,但我无法成功摆脱第一个类 这是我的密码: $(window).on("load", function(e) { $('.preloader').fadeOut('slow'); if (document.cookie.includes("

我正在使用if语句根据特定条件显示警报消息

在第二个条件下,
新文章
我希望添加一个特定的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”)