我有一个侧边栏,我正在尝试使用Javascript来更改外观以及点击目标页面。但是我尝试了许多没有运气的建议,我不明白为什么。
我尝试过使用这个JS代码:
$(document).ready(function () {
var url = window.location;
$('.navigation ul li a[href="'+url+'"]').parent().addClass('active');
});
但是,一旦我添加了href="~/~"
属性,我就会得到一个"Unknown Command: [Link in href]"
- 并且"active"
类没有添加到该元素中。
感谢您的时间
答案 0 :(得分:1)
您尝试使用window.location
获取当前网页的网址。但是,window.location
实际上是一个包含多个属性的对象,并且不是包含当前页面URL的字符串。您希望使用其中一个window.location
属性,最有可能是window.location.pathname
。但是,请参阅https://developer.mozilla.org/en-US/docs/Web/API/Location以获取完整的选项列表。
答案 1 :(得分:0)
对于您的代码,您需要将网址设置为.*
答案 2 :(得分:0)
试试这个,
var url = window.location;
// Will only work if string in href matches with location
$('.navigation ul li a[href="'+ url +'"]').parent().addClass('active');
// Will also work for relative and absolute hrefs
$('.navigation ul li a').filter(function() {
return this.href == url;
}).parent().addClass('active');