我试图找出在导航菜单中选择了哪个确切的列表项。有了这些信息,我将从上一个菜单链接中删除类active
,并将其添加到新选择的菜单中。
<ul class="nav navbar-nav navbar-right">
<li class="active"><a href="#pageOne">Home</a></li>
<li><a href="#pageTwo">About</a></li>
<li><a href="#">Portfolio</a></li>
<li><a href="#">Contact</a></li>
</ul>
JavaScript语言:
let menuClick = document.getElementsByClassName(".nav");
menuClick.addEventListener('click', changeActive(), false);
function changeActive(){
//enter code here
}
4条答案
按热度按时间wwwo4jvm1#
使用中
香草JS -DEMO
我不会强迫您使用jQuery,但是您应该考虑使用它来做更多的事情,编写更少的代码。
查询-DEMO
e1xvtsh32#
获取
nav
节点列表的第一个元素:附加事件侦听器(注意:
changeActive
而不是changeActive()
)。这将使用事件委派来捕获从锚点冒泡的事件。现在向函数添加一些代码:
DEMO
i34xakig3#
有许多方法可以做到这一点:
1.您可以使用onhashchange来检测散列更改
如果是第一页,那么函数的作用是:如果是第二页,那么函数的作用是:如果是第一页,那么函数的作用是:如果是第二页,那么函数的作用是:
1.或者简单地将click事件绑定到菜单项
于飞:
JS:
vngu2lb84#
注意,你必须循环以向菜单中的所有对象添加一个单击处理程序。
下面是一个片段
第一个