1

我已使用 php 包含函数将标题和导航附加到我的网页。导航有一个“活动”类来指示用户当前正在查看的页面。

我成功地使用以下代码为常规列表项实现了这一点。

<li <?php if (strpos($_SERVER['PHP_SELF'], 'index.php')) echo 'class="active"'; ?>><a href="index.php">Home</a></li>

但是,我无法弄清楚如何为下拉列表项中的页面实现这一点。

<li class="dropdown">
    <a class="dropdown-toggle" data-toggle="dropdown" href="services.php">Services<b class="caret"></b></a>
        <ul class="dropdown-menu">
            <li><a href="services.php">Services</a></li>
            <li><a href="web-development.php">Web Development</a></li>
            <li><a href="graphic-design.php">Graphic Design</a></li>
        </ul>
</li>

我试图实现的结果是,当用户查看“服务”、“Web 开发”或“图形设计”页面时,主“服务”列表项将有一个 class="active"。

4

1 回答 1

0

您可以使用客户端 javascript 来实现这一点。

我推荐使用 jQuery,因为它易于使用。只需将其包含在您的 html 中:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

并使用addClass()函数,例如:

<script>
$(function() {
  var url = window.location.href;
  if(url.indexOf("services.php") > -1)
    $('.dropdown-menu [href*=services.php]').addClass('active');
  //repeat the if statement for each case...
});
</script>
于 2013-03-24T09:11:24.717 回答