0

这是一个带有下拉菜单的基本引导导航栏,它在 header.php 中使用(因此每个页面都不能有自己的导航栏,其中包含带有活动标签的列表项)

当您转到页面时,我一直在使用它来回显活动标签:

<?=echoActiveClassIfRequestMatches("balhblah")?>

第一个问题:当<li>有下拉菜单时,回声将不起作用。

第二个问题:想办法让 Home在选择下拉菜单<li>时激活,比如“摇晃”。<li>

    <li class="dropdown" <?=echoActiveClassIfRequestMatches("foods")?>>
        <a href="foods.php" >foods</a>

        <ul class="dropdown-menu">
            <li><a href="#">shakes</a></li>

            <li><a href="#">cookies</a></li>
        </ul>
    </li>

想为此做一个Bootply,但是当你的 href 是 # - 基本上我不知道如何链接到 Bootply 中的另一个页面,这样你就可以看到活动回声的结果。不确定你是否可以。

4

1 回答 1

2

第一个问题:一个 html-tag (在这种情况下是 li )不能有两个类属性,所以你需要做一些类似于<li class="dropdown <?=echoActiveClassIfRequestMatches("foods")?>">. <li class="dropdown active">所以你也需要你的 echoActiveClassIfRequestMatches 函数的输出。

第二个问题:php 无法读取您的 url 的哈希部分,请参阅Can I read the hash section on my server-side application (PHP, Ruby, Python, etc.)? . 您将需要 javascript 来将部分设置为活动状态。

 $('.dropdown-menu li a').on('click', function() { $(this).parent().addClass('active');});
于 2013-05-18T13:24:54.377 回答