【发布时间】:2016-10-19 16:48:43
【问题描述】:
我在 Wordpress 中创建了一个导航菜单,并将其放在我的子主题的 sidebar.php 中。
我的导航菜单位于正确的位置和功能,看起来应该是除了 JS,我试图正确但似乎失败了。
每个菜单项都会将您带到不同的页面。我希望菜单项保持突出显示,以显示您在链接到该页面后所在的页面。我已经使用 CSS 使用 :hover 突出显示 li。
我不知道如何或在何处放置 js 以使其突出显示菜单。
- 我的 JS 正确吗?
- 我应该把它放在哪里?直接在sidebar.php下的html?还是其他地方?
谢谢!
$('.main-nav-list').on('click', function () {
$('li.active').removeClass('active');
$(this).addClass('active');
});
.main-nav .main-nav-list li:hover {
background-color: #323840;
width: 150px;
border-radius: 20px;
}
.main-nav .main-nav-list li:active {
background-color: #323840;
}
<div class="sidebar sidebar-main <?php echo $sidebar_classes; ?>">
<div class="inner-content widgets-container">
<?php generated_dynamic_sidebar($sidebar_name);?>
<div class="nav nav-pills nav-stacked main-nav">
<div class="main-nav-holder">
<ul class="main-nav-list">
<li class="active">
<a id="sidebar-questions" href="/dwqa-questions">QUESTIONS</a>
</li>
<li class="">
<a id="sidebar-ask" href="/dwqa-ask-question">ASK A QUESTION</a>
</li>
<li class="">
<a id="sidebar-ama" href="/ask-me-anything">AMAs</a>
</li>
<li class="">
<a id="sidebar-jobs" href="/jobs">JOBS</a>
</li>
<li class=“">
<a id="sidebar-find" href="/find-a-health-professional">FIND A HEALTH PRO</a>
</li>
</ul>
</li>
【问题讨论】:
-
我的answer有什么不清楚的地方
-
我已在我的 sidebar.php 文件的脚本标签之间添加了您的代码。但它不适用于同一页面或链接到的页面。我需要在
var pathname = document.location.pathname;中指定路径吗?还是按原样添加? -
按原样添加。在 'var pathname' 下添加 ‛console.log(pathname)' 会输出什么?
-
我的 CSS 显示现在包含:
.main-nav .main-nav-list a:hover { background-color: #323840; width: 150px; border-radius: 20px; } .main-nav .main-nav-list a:active { background-color: #323840; } -
我的 sidebar.php 包含:`
标签: javascript jquery html css wordpress