【发布时间】:2013-07-04 19:34:56
【问题描述】:
我不明白为什么我不能在导航栏上突出显示当前菜单页面(除了我是一个完全初学者的事实 :-) 我正在使用 JQuery 函数,这是我在网上找到的众多函数之一,但它们都不起作用。 功能是:
<script type="text/javascript">
$(function(){
var path=window.location.pathname;
path=path.replace(/\/$/, "");
path = decodeURIComponent(path);
$('#menu a').each(function() {
var href=$(this).attr('href');
if (path.substring(0, href.length) === href) {
$(this).closest('li').addClass('active');
}
});
});
</script>
我的 CSS 是:
@charset "UTF-8";
/* CSS Document */
#menu{ width:100%; height:40px; background-color: pink; border-bottom: 1px silver solid;}
#menu ul {
list-style: none;
margin:0 auto;
position: relative;
padding:5px 0;
width: 940px;
}
#menu ul li {
display:inline;
margin-left: 150px;
}
#menu li:first-child {
margin-left:0;
}
#menu ul li a {
color: silver;
display:block-inline;
font: 16px "Comic Sans MS", cursive;
text-align: center;
text-decoration: none;
}
#menu ul li a:hover {
background-color: yellow;
text-decoration:underline;
}
.active{
color:green;
}
HTML 标记是:
<?php
echo<<<END
<div id="menu">
<ul>
<li><a id="home" style="color:white; font-size:16px;" href="$doc_root/index.php" title="Home Page">Enzo</a></li>
<li><a id="travel" href="$doc_root/travel/grid.php" title="My Trips"><span>travelling</span></a></li>
<li><a id="images" href="#">images</a></li>
<li><a id="words" href="#">words</a></li>
<li><a id="about" href="#">about</a></li>
</ul>
</div>
END;
?>
我不知道出了什么问题,可能是我的 css。 为简单起见只是颜色:绿色,我不确定“活动”类是否正确插入 CSS 菜单页面。 请给我一些提示或其他解决方案来解决问题。 爱你们所有人 :-)
【问题讨论】:
-
让我添加 html 标记:
-
这里href="$doc_root/index.php",要加上href="/index.php"