javascript - 如何根据当前url添加类

标签 javascript jquery class url addition

var search_name = location.search;
    if (search_name.search("cate_no=24")  > 0) {
        $(".cate_new a").addClass("active");
    }
});

如果当前文档 URL 为 http://abc.com/list.html?cate_no=24 , 我想将“active”类添加到 li a 中。

我搜索了一下,发现了这些js代码,但是不起作用。 是不是搞错了?

最佳答案

这是不正确的。 <强> search() 如果找到匹配项,则返回匹配项的偏移位置;如果未找到匹配项,则返回 -1

当您检查cate_no=24是否包含cate_no=24时,如果为真,它将返回0

目前,您的条件检查 search() 是否会返回 > 0,这不是您想要的。

你应该做的是检查它是否大于> -1:

if (search_name.search("cate_no=24") > -1) 

虽然,正如我在答案的第一次修订中提到的,使用 indexOf() 会更好更快。 (search() 应该在处理正则表达式时使用,而不是用于简单的字符串搜索)。

if (search_name.indexOf("cate_no=24") > -1) 

关于javascript - 如何根据当前url添加类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17021501/

相关文章:

javascript - 将参数传递给 jQuery 中的单击事件

javascript - 如何将 name 属性添加到 DOM 输入复选框对象

javascript - jQuery回调函数中匹配到的捕获类

c# - 在创建类实例 C# 时运行函数

javascript - 使用 Angular 如何不反对代码分离?

javascript - 如何在 knockout observablearray 中按索引访问对象?无法处理绑定(bind)

java - 在继承和利用不同类中的属性方面遇到麻烦

python - 如何添加到从另一个类继承的 python 类的初始定义?

javascript - CSS 过渡 : Cover Image From Bottom To Top

javascript - jquery登录scrollDown