На стороне клиента - вешать на элемент, по которому кликнули класс (active, open - без разницы). Ну и не забыть перед этим в css-файле прописать стили для этого класса. Такой вариант прокатит при ajax-подгрузке контента.
При стандартном варианте, как сказали выше -проверяешь соответствие url и ссылки и далее по аналогии.
<div class="menu">
<ul>
<li><a class="js-menu-link active" href="index.php">Главная</a></li>
<li><a class="js-menu-link" href="order.php">Заказ</a></li>
<li><a class="js-menu-link" href="payment.php">Оплата</a></li>
<li><a class="js-menu-link" href="conditions.php">Условия</a></li>
<li><a class="js-menu-link" href="contacs.php">Контакты</a></li>
</ul>
</div>
$('.menu').find('.js-menu-link').on('click', function () {
if ($(this).hasClass('active')) {
return;
}
$('.menu').find('.js-menu-link active').removeClass('active');
$(this).addClass('active');
});
Вариант на JS:
var menuItems = document.getElementsByClassName('js-menu-link');
var onClick = function (event) {
event.preventDefault();
for (var i = 0; i < menuItems.length; i++) {
menuItems[i].classList.remove('active');
}
event.currentTarget.classList.add('active');
};
for (var i = 0; i < menuItems.length; i++) {
menuItems[i].addEventListener('click', onClick, false);
}