2013-06-11 3 views
5

У меня есть 4 страницы в основном файле HTML JQM. Когда я переключаюсь на один с помощью changepage, это нормально в первый раз, но я использую кнопку data-rel = back, чтобы вернуться назад, и это переключается на предыдущую страницу, а затем возвращается к странице с обратной кнопкой. Должен ли я просто не использовать data-rel = back? Если не какая-то альтернатива?JQuery mobile changepage с обратной кнопкой не работает

Использование JQM 1.3.1

$("#listView").on("vclick","li", function(e) { 
    //ajax call to get results for second page 
    $.mobile.changePage('#second'); 
} 

Кнопка на второй странице

<a href="#" data-rel="back">Back</a> 
+0

Вы можете программно это сделать с помощью $ .mobile.back(), а .. – krishgopinath

+1

Постараюсь, я думал, что это было бы то же самое, хотя. – Jason

+0

Возможно, вы правы, но нет никакого вреда в попытке :-) – krishgopinath

ответ

2

Для перехода на предыдущую страницу программно, используйте код ниже. Вам нужно также использовать stopImmediatePropagation();, чтобы остановить jQuery Mobile от прыжка дважды, что приведет к показу той же страницы.

Редактировать: Я тестировал его на iPad, preventDefault() тоже требуется.

Demo

$(document).on('vclick', '[data-rel=back]', function (e) { 
e.stopImmediatePropagation(); 
e.preventDefault(); 
var back = $.mobile.activePage.prev('[data-role=page]'); 
    $.mobile.changePage(back, { 
    transition: 'slide', 
    reverse: true }); 
}); 
0

Используйте этот один. Вы можете перенаправить между страницами с помощью location.hash = "" с идентификатором страницы.

DEMO http://jsfiddle.net/yeyene/uJz3E/7/

$("#listView").on("vclick","li", function(e) { 
    // second is the page you want to redirect on click. 
    location.hash = "second"; 
}); 
Смежные вопросы