添加&通过PHP从导航链接中删除活动类?

时间:2013-12-26 02:06:55

标签: javascript php navigation include

我在index.php中有一个php导航,并在index.php中包含不同的内容,具体取决于点击的导航标签。 我现在有一个问题,我想在包含页面时添加/删除“class =”active“”。也许有一个非JavaScript的解决方案,但也有JavaScript,我现在无法管理好几个小时......

非常感谢您的帮助!

Navigation:

<li class="<?php echo ($page_id == 'Home' ? "active" : "")?>"><a href="index.php?go=home" class="activator">Home</a></li>
<li class="<?php echo ($page_id == 'Konzept' ? "active" : "")?>"><a href="index.php?go=konzept" class="activator">Konzept</a></li>

...


<?php

if (isset($_GET['go']))
{
    switch($_GET['go'])
    {

        case 'home':    include('home.html');
                        $page_id == 'Home';
                        break;
        case 'konzept': include('konzept.html');
                        $page_id == 'Konzept';
                        break;
        ...
    }
}


?>

1 个答案:

答案 0 :(得分:0)

对我来说,这似乎是一个简单的语法错误

<?php echo ($page_id == 'Home' ? 'active' : '')?>

您的字符串已经以"开头,因此您需要使用'\"来取消引用。

只要你的导航结构出现在isset之后,你就可以去了。

最后还有一件事,如果页面在查询字符串中没有go,则永远不会设置page_id,并且会出现undefined index错误,所以首先在isset的范围之外定义它。

<?php

$page_id = false;
if(isset(.....