【发布时间】:2013-08-16 08:51:38
【问题描述】:
我已将此 PHP 代码添加到我的导航栏中,以便在单击导航栏链接时保持链接处于活动状态。当我通过 www.something.com 导航到该页面时,idex.php 或主页没有激活
当访问者到达我的网站时,我的 index.php 或主页是 class="active",我该怎么办
enter code here<?php
function echoActiveClassIfRequestMatches($requestUri)
{
$current_file_name = basename($_SERVER['REQUEST_URI'], ".php");
if ($current_file_name == $requestUri)
echo 'class="active"';
}
?>
<div class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand visible-sm" href="#"><img src="assets/images/all.gif" style="padding-bottom:5px;" alt="" height="35em"></a>
<div class="nav-collapse collapse">
<ul class="nav navbar-nav">
<li <?=echoActiveClassIfRequestMatches("index")?>><a href="index.php">Home</a></li>
<li <?=echoActiveClassIfRequestMatches("about")?>><a href="about.php">About us</a></li>
<li <?=echoActiveClassIfRequestMatches("services")?>><a href="services.php">Our services</a></li>
<li <?=echoActiveClassIfRequestMatches("contact")?>><a href="contact.php">Contact</a></li>
</ul>
</div><!--/.nav-collapse -->
</div>
</div>
【问题讨论】:
-
short_open_tags是on在php.ini中吗?而且您的 html 无效。你使用了两次<li><li..。试试<li <?=echoActiveClassIfRequestMatches("index")?>> ... -
“保持链接有效”是什么意思?请准确描述您希望实现的效果。
-
www.something.com 不会激活主页链接。 www.somthing.com/index.php 使主页链接处于活动状态 访问者到达 www.something.com 所以不会看到主页链接处于活动状态...如何让主页链接激活
-
再一次,“活动链接”是什么意思?什么是活动链接?您是指突出显示的链接吗?
-
抱歉,是的,突出显示,如果链接处于活动状态,则导航栏链接会突出显示...但如果您直接访问 www.something.com,则所有链接都不会突出显示。如果您访问 www.something.com/inedx.php 或任何其他页面,则链接将处于活动状态,即突出显示。