将外部页面中的href / add属性替换为与当前URL相关

时间:2018-02-02 18:37:36

标签: javascript jquery

所以我有一个导航html加载到网站的每个页面,它看起来像这样:

<div id="links-row">
    <ul class="cssmenu">
        <li class="home"><a title="Home" href="../"></a></li>
        <li class="sale"><a title="Sale" href="../sale"></a></li>
        <li class="news"><a title="News" href="../news">
        <li class="contact"><a title="Contact" href="../contact"></a></li>
    </ul>
</div>

它被加载到带有js:

的页面中
$(function(){
    $("#navigation").load("../_nav.html");
});
<div id="navigation">
</div>

我可以通过将<a>的类设置为“已选择”来单独突出显示链接。我想要做的是添加class属性并将href更改为“#”而不是基于当前页面的现有url。我知道我可以通过js获取当前页面名称:

path = window.location.pathname;
page = path.replace(/\//g,"");

我的问题是;如何搜索加载的页面以查找相关链接,然后更改特定链接url href并设置它的类

1 个答案:

答案 0 :(得分:0)

感谢您输入结果。

$(function(){
    path = window.location.pathname;
    page = path.replace(/\//g,"");
    $("#nav-placeholder").load("../_nav.html", function() {
        $('a[href="../' + page + '"]').addClass("Selected").attr("href", "#")
    });
});