2014-02-24 20 views
0

我有这样的代码jQuery Mobile的:防止节点上的历史被删除回

$(function() { 
    $(window).on("swipeleft", jqmForward).on("swiperight", jqmBack); 
}); 

function jqmBack(e) { 
    var prevpage = $('div.ui-page-active').prevAll('div[data-role="page"]'); 
    if (prevpage.length > 0) 
    $.mobile.changePage($(prevpage[0]), { transition: "slide", reverse: true }, true, true); 
} 
function jqmForward(e) { 
    var nextpage = $('div.ui-page-active').nextAll('div[data-role="page"]'); 
    if (nextpage.length > 0) 
    $.mobile.changePage($(nextpage[0]), "slide", false, true); 
} 

但转发功能永远不会奏效,因为显然JQM删除最新div.ui-page当你回去。

有没有办法让div.ui-page让你继续前进后意外向右滑动(即回去)?

我使用jQuery Mobile的1.4.0

+0

JQM不会删除_multi页面model_中的任何页面。尝试'$ .mobile.pageContainer.pagecontainer(“getActivePage”)'而不是$('div.ui-page-active')''。 – Omar

+0

它确实如此。请参阅[在DOM中缓存页面](http://demos.jquerymobile.com/1.0rc1/docs/pages/page-cache.html)。该代码没有任何区别。 – Aximili

+0

在单页模型中,它确实删除页面。在多页面中没有。 – Omar

回答