2014-09-28 3 views
1

У меня есть проблема, и я не мог решить ...отзывчивым меню в макетах/main.php

What I want

макеты/main.php

<div id='cssmenu'> 
    <?php 
     $menular = Yii::app()->db->createCommand() 
           ->select('m.idmenu, m.menuparent_id, m.url, m.title_'.Yii::app()->language) 
           ->from ('menu m') 
           ->where('m.menuparent_id=0 and m.active="1"') 
           ->order('m.idmenu asc')->queryAll(); 

     echo "<ul>"; 
     foreach($menular as $menu){ 
      if($menu['url'] == '#') 
       $echoUrl = 'javascript:void(0);'; 
      else 
       $echoUrl = $baseUrl.'/'.Yii::app()->language.$menu["url"]; 

      echo "<li class=''>"; 
      echo "<a href='".$echoUrl."' title='".$menu['title_'.Yii::app()->language]."'>".$menu['title_'.Yii::app()->language]."</a>"; 
      echo "</li>"; 
     } 
     echo "</ul>"; 
    ?> 
</div> 

В этом сценарий сценарий не присваивается active класс до li ..

Итак, пожалуйста, помогите мне решить эту проблему.

Я думаю, что могу объяснить, в чем проблема. Спасибо.

P.S: css и script коды одинаковы с моей макет файла.

+0

Если это Java-функция не работая, то, возможно, что-то не так с вашим js. Можете ли вы поделиться с нами своим файлом сценария EXACT? –

+1

Спасибо за ответ. Но я использую те же js, с которыми я поделился этим вопросом (в ссылке). –

ответ

1

вы можете использовать один из нижеуказанных вариантов, чтобы подтвердить, какой контроллер или его действие, тогда вы можете назначить активный класс в меню, если оно принадлежит загружаемой странице.

  1. Получить контроллер который вызывается

    Yii::app()->controller->id 
    
  2. Проверьте действие, которое вызывается.

    Yii::app()->controller->route 
    

Предположим, например, если вы хотите назначить активный класс «о нас» странице и она вызывается с сайта/о то

$active = Yii::app()->controller->route == "site/about" ? "active" : ""; 
echo "<li class='".$active."'>"; 
+0

спасибо, что ответили. но когда я посещаю страницу 'site/about', все пункты меню имеют класс' active'. –

Смежные вопросы