Динамический селектор rel не работает
Я использую jquery для динамического создания активного состояния с помощью API Flexslider. Вот мой JQuery:
var curslide = slider.animatingTo;
var parsed = parseInt(curslide);
$("#pillarControl li").each(function(){
$(this).removeClass("active");
});
$("#pillarControl li a[rel='parsed']").parent().addClass("active");
Нижняя строка НЕ работает. Если я заменю parsed
с фактическим целым числом, это прекрасно работает. Но по какой-то причине переменная parsed
не вызывает добавление активного класса. Я сделал тест, чтобы увидеть, если переменная parsed
было сохранено правильное значение, и это делает. Кажется, проблема с синтаксисом? Не уверен, есть идеи?
3 ответа
Решение
Проблема в том, что вы не передаете значение переменной, а просто "анализируете" текст. Пытаться:
$("#pillarControl li a[rel='" + parsed + "']").parent().addClass("active");
Вы, кажется, передаете разобранный как строка. Вам нужно пройти
var parsed = parseInt(curslide);
Так что ваш старый селектор смотрит с rel="parsed"
а не ценность разбирается..
$("#pillarControl li a[rel='" + parsed + "']").parent().addClass("active");
Попробуй это:
$("#pillarControl li a[rel='" + parsed + "']").parent().addClass("active");