如何在特定情况下突出显示活动导航选项卡
How to highlight active nav tab in specific case
我将其用作JS的模板,该模板使用此API参考使用JQuery选择正确的导航。
我当前的代码:
索引.php
<html>
<head>
<title>ChillSpot Alpha 1.2.3</title>
<link rel="stylesheet" type="text/css" href="common/style.css">
<script type="text/javascript" src="common/jquery-1.11.2.min.js"></script>
<script type="text/javascript" src="background.js"></script>
<script type="text/javascript" src="common/navHighlight.js"></script>
<script type="text/javascript"> $( document ).ready( getImage );</script>
<script type="text/javascript"> $( document ).ready( setNavigation );</script>
</head>
<?php
include 'common/header.html';
?>
//More code, snipped from example: not relevant
常见/导航突出显示.js
<!--
function setNavigation() {
var path = window.location.pathname;
path = path.replace(/'/$/, "");
path = decodeURIComponent(path);
$(".menuList a").each(function () {
var href = $(this).attr('href');
if (path.substring(0, href.length) === href) {
$(this).closest('li').removeClass('tab');
$(this).closest('li').addClass('tab selected');
}
});
}
//-->
common/header.html
<div class="menu">
<ul class = "menuList">
<li class="tab"><a href="index.php">Home</a></li>
<li class="tab"><a href="comm.php">Communications</a></li>
<li class="tab"><a href="chillcraft/index.php">ChillCraft</a></li>
<li class="tab"><a href="forum.php">Forum</a></li>
<li class="tab"><a href="ud.php">Updates</a></li>
<li class="tab"><a href="about.php">About</a></li>
</ul>
</div>
<div class="content">
。这是行不通的。在我的情况下,导致示例失败的不同之处是什么?所有"li"元素都以类"tab"结尾,没有一个元素有"tab选择"。
我不确定这是否真的出了问题,但我确实注意到他们示例中的 href 都以 /
开头,而您的则不以 开头。 相对路径可能是您的路径不起作用的原因。
因此,如果您将html更改为此内容,则可能会很好:
<div class="menu">
<ul class = "menuList">
<li class="tab"><a href="/index.php">Home</a></li>
<li class="tab"><a href="/comm.php">Communications</a></li>
<li class="tab"><a href="/chillcraft/index.php">ChillCraft</a></li>
<li class="tab"><a href="/forum.php">Forum</a></li>
<li class="tab"><a href="/ud.php">Updates</a></li>
<li class="tab"><a href="/about.php">About</a></li>
</ul>
</div>
我对这些情况的方法如下:
为每个选项卡添加一个唯一 ID(除了您已有的类之外)在每个特定文件(索引.php、通用.php、论坛.php等)上,使用您选择的选项卡创建一个对象:
var selected = $('#forumTab');
执行一个函数,确保从所有选项卡中删除活动类并将其仅添加到当前选项卡中:
$('.tab').removeClass('active');
selected.addClass('active');
相关文章:
- 如何在angular bootstrap ui中聚焦活动导航选项卡中的拳头输入字段
- 引导导航选项卡未突出显示活动选项卡
- 向服务器发送请求以获取活动引导导航药丸
- 引导导航活动状态不起作用
- Bootstrap/AngularJs:如何为导航类的活动选择设置粗体属性
- 使用CSS/JavaScript在活动页面上突出显示活动导航菜单项,无id
- 如何找到当前导航李"活动的”;在引导程序导航中
- 添加基于 URL 的活动导航类
- 如何将活动状态类动态更改(添加)到导航链接
- 如何在特定情况下突出显示活动导航选项卡
- 按部分更改活动导航的下划线
- 在活动导航项目下方显示箭头
- 重写一个Javascript函数,该函数可以选择在IE8中工作的活动导航选项卡
- 使用jquery和cookie单击时的活动导航栏按钮
- 页面滚动活动导航javascript
- 活动导航锚链接
- 添加基于子页面URL的活动导航类
- CSS代码如何改变活动导航按钮的颜色
- Jquery单个页面上的活动导航
- 如何在流星应用程序中按下后退按钮时正确设置活动导航选项卡