Джимми прав. Когда вы перезагружаете страницу, браузер также обновляет код Javascript, что означает, что все сделанные вами переменные и настройки также будут сброшены. Вот почему класс, кажется, удаляется, когда вы нажимаете на ссылку.
Решение здесь состоит в том, чтобы изменить ваш код, чтобы проходить по всем ссылкам и сравнивать каждую из них с URL текущей страницы. Когда вы найдете совпадение, вызовите функцию addClass для этой ссылки, чтобы изменить ее цвет. Итак, что-то вроде этого должно работать:
$(function(){
var pathname = (window.location.pathname.match(/[^\/]+$/)[0]);
$('#container ul li a').each(function() {
if ($(this).attr('href') == pathname)
{
$(this).addClass('current');
}
});
});
Обратите внимание, что мы вызываем эту функцию зацикливания при загрузке страницы, а не вызываем ее, когда пользователь щелкает ссылку ... потому что нажатие на ссылку приведет к перезагрузке страницы, что приведет к сбросу всех переменных JQuery.
Надеюсь, это поможет.