我有一些javascript会找到当前的网址并设置为li来激活类。我需要它才能使手风琴菜单正常工作,将相关联的href中的URL替换为“#”。
即
<li><a id="Create" href="../Create/Create.html"> Create</a>
需要更改为:
<li><a id="Create" href="#"> Create</a>
这是我的HTML:
<ul class="topnav">
<li class="">
<a id="Dashboard" href="../dashboard/dashboard.html"> Dashboard</a>
</li>
<li><a id="Create" href="../Create/Create.html"> Create</a>
<ul>
<li><a id="Monster" href="../Monster/Monster.html"> Monster</a>
<ul>
<li><a id="Custom" href="../Custom/Custom.html"> Custom</a>
<ul>
<li><a id="New" href="../New/New.html"> New</a></li>
<li><a id="Drafts" href="../Drafts/Drafts.html">> Drafts</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
当前的Javascript将在相应的“li”标签上为当前页面提供“活动”类。
var url = window.location;
$('ul.topnav a').filter(function() {
return this.href == url;
}).parent().addClass('active');
这可以通过ID轻松实现: 的document.getElementById( “创建”)HREF = “#”。 但由于网站的规模,这不是一个选择。它需要通过javascript完成。
我试过这样做 document.getElementByClassName('li.active a')。href =“#”;
但这不起作用。我也担心这可能会剥夺那个li下的所有hrefs。
任何帮助都会非常感激!