【问题标题】:Accordion style menu active depending on url segment根据 url 段激活手风琴风格菜单
【发布时间】:2013-05-03 08:11:30
【问题描述】:

这几天我一直在纠结这个问题。我们的想法是复制 Outlook 2010 风格的侧边栏导航并创建用户熟悉的 UX。我目前将其用于 url 上的基本导航和活动状态。

<ul class="fltrt" style="padding-right:5px;"> 
<?php foreach($NavigationArray as $i =>     $nav_item): ?> 
<li <?php if ( $this->uri->uri_string() == $i ): ?> class="active"<?php endif; ?>> 
<?= anchor($i, $nav_item) ?> </li> <?php endforeach ?> </ul>

我只是希望以http://jqueryui.com/accordion/ 为例实现一个简单的手风琴菜单,部分标题是磁贴,菜单像上面一样向下循环,但是,如果 url 的第一段 = 标题是活动的,并且如果手风琴菜单中的链接与 URL 的第二段匹配,则它也是活动的。

想法将不胜感激。

【问题讨论】:

    标签: jquery codeigniter accordion user-experience


    【解决方案1】:

    这一行:

    <li <?php if ( $this->uri->uri_string() == $i ): ?> class="active"<?php endif; ?>>
    

    不会工作。

    $this-&gt;uri-&gt;uri_string() 类似于 /index.php/mycontroller/myfunction$i 可能是一个 int (0, 1, 2, 3),所以它们永远不会相等。

    您要匹配$this-&gt;uri-&gt;segment(n);,其中n 是您要匹配的url 段。例如如果 url 是 /index.php/home/overview 并且你想要匹配的菜单项是 'home`,你会这样做

    <li <?php if ( $this->uri->segment(1) == $nav_item ): ?> class="active"<?php endif; ?>>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-12-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-01
      • 2013-05-19
      • 2011-08-26
      相关资源
      最近更新 更多