0

您好,我刚开始使用 CI(codeigniter),到目前为止一切顺利,除了我的导航部分。我现在使用 url 类和 anchor 方法来创建 url,但我也希望当前 url 有一个 class="current" 例如,以便我可以设置它的样式。

有人可以告诉我如何做到这一点吗?

我的链接创建如下:

$this->load->helper('url');

$menu_item = array(
    '/home' => 'Home',
    '/schiphol' => 'Schiphol Service',
    '/tarieven' => 'Tarieven en Acties',
    '/kwaliteit' => 'Kwaliteit',
    //'/news' => 'news'
    '/contact' => 'Contact'
);

在我看来

        <nav role="navigation" class="mainnav">
    <ul>
    <?php foreach ($menu_item as $menu => $key): ?>
        <li> <?php echo anchor($menu, $key) ?> </li>
    <?php endforeach ?>
    </ul>
    </nav>

但是在锚方法中,我可以为类提供第三种方法,但我怎样才能只为当前的 url 执行此操作?

4

1 回答 1

0

您可以提供第三个属性,而不是方法。

您必须使用 uri 类将当前 url 与循环中的 url 进行比较:http: //ellislab.com/codeigniter/user-guide/libraries/uri.html

<?php foreach ($menu_item as $menu => $key): ?>
 <li> 
 <?php echo anchor($menu, $key, $this->uri->segment(1) == $menu ? 'class="active"' : '') ?>
 </li>
<?php endforeach ?>
于 2012-11-30T18:00:46.193 回答