通过JQuery添加基于URL字符串的CSS类

RCN*_*eil 5 url jquery

我编写了一些JQuery,当用户在Wordpress中导航到"page/2 /"时,侧边栏中会出现一个图像.它的CSS display:none;初始设置,然后我将JQuery更改为display:block;如果存在该URL字符串.我写的代码有它向后...所以它对每个页面都做'BUT'/ page/2 /'.

$(document).ready(function() {

var url = window.location.pathname;
if(url.indexOf('/page/2/')){
    $('.sidebarimage').css("display","block");
}});
Run Code Online (Sandbox Code Playgroud)

我一直认为如果If语句中没有设置条件,它会将其视为true,其他任何条件都视为false.我应该放一个= 1什么东西吗?我错过了什么?

非常感谢SO

Jar*_*Par 4

if如果条件值可转换为 ,则将进入该块true。在 Javascript 中,任何非零数字都是,未找到字符串时true的返回值为-1。indexOf因此,只要它不存在,它就会返回 -1,这被视为 true 并且该if块被输入。

将条件更改为明确您要查找的内容

if (url.indexOf('/page/2/') !== -1) {
  $('.sidebarimage').css("display","block");
}
Run Code Online (Sandbox Code Playgroud)