Я пытаюсь использовать jquery.cookie для обработки файлов cookie с вертикальным аккордеонным меню.
var active = $.cookie('active'),
$nav = $("#nav > li > a"),
$active = $nav.filter('.' + active);
$nav.click(function(e, speed) {
$("#nav li ul").slideUp(speed);
if (!$(this).next().is(":visible")) {
$(this).next().slideDown(speed);
$.cookie('active', this);
}
});
if ($active.next().is(':hidden')) {
$active.trigger('click', [0]);
}
Когда я нажимаю на раскрывающееся меню, я получаю эту ошибку на Firebug:
Uncaught Error: Syntax error, unrecognized expression: .
Я не знаю, что я сделал неправильно. Спасибо за любую помощь!
Я подозреваю, что проблема здесь:
$active = $nav.filter('.' + active);
Если active
является ""
(или все, что принуждает к ""
), это становится $nav.filter(".")
, $nav.filter(".")
является недопустимым выражением CSS. Я получаю эту точную ошибку, если я подаю недопустимое выражение в filter
.