JQuery - 解析类然后使用if语句修改一个

Chr*_*ley 2 javascript css arrays jquery

我正在尝试仅在当前页面等于该链接时才将类应用于链接.

我找到当前页面:

var pathname = window.location.pathname.split("/")[window.location.pathname.split("/").length - 1];
Run Code Online (Sandbox Code Playgroud)

这会抓取页面的url并保存最后一个/之后的任何内容,在我的页面为'index.html'的情况下.

现在,我正在使用链接(带有display:block的锚标签),当您将鼠标悬停在它们上时,这些链接会有背景颜色变化.

我的目标是当您访问链接链接到的页面时,让这些链接已经着色,就像它们被悬停一样.

所以我用过:

if (pathname == $(".linkclass").attr("href")){
    $(this).addClass("linkHover");
}
Run Code Online (Sandbox Code Playgroud)

现在显然"this"修饰符不起作用,但是如何告诉它只将linkClass的哪个实例传递给if语句?(而不是.linkclass的每个实例,其中有多个).

谢谢!

Chr*_*ley 5

我明白了,但如果有人遇到类似问题,我会回答.

我认为jquery可以使用它自己的选择引擎来处理比较,而不是if语句.起初我找了.equals或者什么东西,但我想通了:

var pathname = window.location.pathname.split("/")[window.location.pathname.split("/").length - 1];
$(".linkClass[href='" +pathname+ "']").addClass("linkHover");
Run Code Online (Sandbox Code Playgroud)

您可以在jquery选择器中使用变量,并选择针对属性,因此这非常有效.