JQM(jQueryMobile)在changePage()上推出DOM的最后一页

时间:2011-04-20 23:17:30

标签: jquery dom jquery-mobile

我注意到我刚刚查看的页面仍在DOM中。有没有办法删除我使用changePage()转换到新页面后查看的最后一页?

我已禁用所有后退导航,因为我不希望在转换到新页面时返回到最后一页。

有什么建议吗?

网站流程:

  • 主页 - >填写信息 - >在changePage()
  • 上提交
  • 下一页 - >填写更多信息 - >提交在changePage()
  • 等...

提交页面后我不再需要了

更新:

这是第一页:

<div data-role="page" 
     id="first_page" 
     data-theme="z" 
     data-backbtn="false" 
     data-url="first_page" 
     class="ui-page 
     ui-body-z">

添加新页面时会向其添加内容:

<div data-role="page" 
     id="next_page" 
     name="next_page" 
     data-theme="z" 
     data-title="next_page" 
     data-url="getNextPage.php?page=next_page" 
     class="ui-page 
     ui-body-z">

像这样调用live():

// pageName[index] = next_page
$('#'+pageName[index]).live('pagecreate',function(event, ui){   
    $(ui.prevPage).remove();

使用像这样的changePage():

$.mobile.changePage('getNextPage.php?page='+pageName[index],'slide',false,false);

2 个答案:

答案 0 :(得分:11)

不完全知道你的标记我猜你是在手动触发changePage()。如果是这种情况,您可以连接列出here列出的其中一个事件。

  

<强> pageshow
  在页面上触发   在过渡完成后显示。

$('div').live('pageshow',function(event, ui){
  $(ui.prevPage).remove();
});

Example on jsfiddle

答案 1 :(得分:0)

我不确定它是否与您的问题有关 - 但昨天发生的JQM修复与尝试删除DOM元素时的错误有关:https://github.com/jquery/jquery-mobile/commit/d4c7b5da66641a3fd081a834ca3d12a5518d499b