С переходом на мобильный jQuery я бы хотел, чтобы мой сайт вел себя как лифт. У меня есть вертикальное меню:JQuery mobile - Изменение динамического перехода данных
<a href="#">
<div class="menu_item">
<span class="menu_number">2</span>
</div>
</a>
<a href="#">
<div class="menu_item">
<span class="menu_number">1</span>
</div>
</a>
<a href="#">
<div class="menu_item active_item">
<span class="menu_number">0</span>
</div>
</a>
Я установил динамически атрибут данных перехода на каждой странице с:
$(document).bind("pagechange", function() {
var firstActive = false;
$('.menu_item').each(function(index) {
if(!$(this).hasClass('active_item') && firstActive == false)
$(this).parent().attr('data-transition','slidedown');
else if(!$(this).hasClass('active_item') && firstActive == true)
$(this).parent().attr('data-transition','slideup');
else if($(this).hasClass('active_item')){
firstActive = true;
$(this).parent().removeAttr('data-transition');
}
});});
Исходное состояние:
Меню 2 => данных- переход = "slidedown"
Меню 1 => data-transition = "slidedown "
Меню 0 => нет данных переход
Если я нажимаю на "меню":
- Меню 2 => данные переходов =" 1 slidedown»
- Меню 1 => нет передачи данных
- Меню 0 => data-transition = "slideup"
Тогда, если я нажимаю на меню "2":
- Меню 2 => нет данных переход
- меню 1 => данные переходов = "slideup"
- Меню 0 => данных- переход = «slideup»
Даже если меню 1 имеет дата-переход = «slideup», когда я нажимаю он делает slidedown (исходные данные-переход)
Я не понимаю такого поведения.
PS: если я нажимаю на меню 0, это делает slideup переход (хорошее поведение)
Вы ищете класс active_item в div menu_item, но в разметке вы помещаете его в поле menu_number. – ezanker