NibiruanChild
@NibiruanChild

Как выделить в меню пункт активной странцы?

Есть динамическая менюшка, примерно такая:

<li class="active"> 	
	<a href="?page=dashboard">
		<p>Dashboard</p>
	</a>
</li>
<li>
	<a href="?page=user">
		<p>User Profile</p>
	</a>
</li>
<li>
	<a href="?page=table">
		<p>Table List</p>
	</a>
</li>


мне нужно, чтобы class="active" был у того пункта меню, который активен, то есть если $_GET['page']='table', то
должно получиться так:

<li> 	
	<a href="?page=dashboard">
		<p>Dashboard</p>
	</a>
</li>
<li>
	<a href="?page=user">
		<p>User Profile</p>
	</a>
</li>
<li class="active">
	<a href="?page=table">
		<p>Table List</p>
	</a>
</li>


Как организовать это красиво?
  • Вопрос задан
  • 232 просмотра
Решения вопроса 1
Taraflex
@Taraflex
Ищу работу. Контакты в профиле.
c jquery
$('a[href="'+location.search+'"]').parent().addClass('active')

на ванильном js
document.querySelector('a[href="'+location.search+'"]').parentElement.className = 'active';
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Eridani
@Eridani
Мимо проходил
И на ванильном php в цикле
$current = $_SERVER['REQUEST_URI'];
foreach ($menu as $item) {
  if($item['link'] == $current) {
   echo '<a href="" class="active">name</a>';
  }
  else {
     echo '<a href="">name</a>';
   }
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы