基本上,我们的想法是找出文档的当前位置,并更改要更改的链接类(导航手风琴)。到目前为止,我在下面有这个,如果pageURL(变量)是实际的链接,但我不想创建一个可能的链接的完整列表,因此$(位置).att('href');
$(document).ready(function() {
var pageURL = $(location).attr('href');
$('a[href=pageURL]').attr('class', 'active');
});
任何人的任何帮助都将不胜感激
提前致谢
答案 0 :(得分:6)
您需要将变量连接到选择器字符串。
$('a[href=' + pageURL + ']').attr('class', 'active'); });
你拥有它的方式,“pageURL”只是选择器的 part ,因此jQuery正在为href属性寻找带有“pageURL”的<a>
元素。
此外,我不知道location
变量代表什么,但如果您正在寻找当前窗口位置,则需要采用不同的方法。
答案 1 :(得分:4)
通过撰写'a[href=pageURL]'
,您要搜索的a
元素的href
属性等于文字pageURL
,而不是变量的内容。
相反,您需要将变量的内容连接到选择器字符串。
例如:
$('a[href*="' + location.pathname + '"]').attr('class', 'active');
使用jQuery访问location.href
毫无意义
即使链接不包含域名,写location.pathname
也会使其正常工作
使用[href
*
=...]
选择器会匹配包含字符串的href
属性元素。
答案 2 :(得分:1)
正确的语法是:
$('a[href=' + pageURL + ']').attr('class', 'active'); });