1

アクティブなクラスをナビゲーション メニューの現在の項目に適用するため。そのリンクが URL と等しいかどうかを確認する必要があります

私はこのようにしようとしています:

<ul class="nav">
    <li class="<?php if(uri_string(current_url()) == base_url() || uri_string(current_url()) == '') echo 'active'; ?>">
         <a href="<?php echo base_url() ?>">Home</a>
    </li>
    <li class="<?php if(uri_string(current_url()) == base_url('news/create/')) echo 'active'; ?>">
        <a href="<?php echo base_url('news/create/') ?>">+ New</a>
    </li>
</ul>

それは家でうまくいくようです

しかし、news/create では決して平等ではありません....

news/create ( uri_string(current_url()) と/news/create ( base_url('news/create'))を比較します。

それで..この問題をどうするか

4

2 に答える 2

4

私が言ったように、クリーンでシンプルなソリューション:

if($this->uri->uri_string() == 'news/create'){ ...
于 2013-05-09T16:37:42.590 に答える
2

これを試して..

<ul class="nav">
    <li class="<?php if(! $this->uri->segment(1) || $this->uri->segment(1) == 'welcome') echo 'active'; ?>">
         <a href="<?php echo base_url() ?>">Home</a>
    </li>
    <li class="<?php if($this->uri->segment(1) == 'news' && $this->uri->segment(2) == 'create' ) echo 'active'; ?>">
        <a href="<?php echo base_url('news/create/') ?>">+ New</a>
    </li>
</ul>
于 2013-05-08T13:58:02.747 に答える