【发布时间】:2014-08-22 17:26:14
【问题描述】:
我有以下三个 HTML 文件
snapshot http://maroonlemoon.com/egather/screen.png
当用户登录索引页面时,我使用以下事件导航到页面 Home.html
$( ":mobile-pagecontainer" ).pagecontainer( "change","home.html", {
transition: "slide",
reverse: false,
changeHash: true,
});
Home.html 页面使用事件加载所有页面内容(如屏幕截图所示的列表视图)
$(document).one('pageinit',function(){
ShowHomePage(); //This function binds all page buttons and also
retrieves the list through an AJAX call
});
上述事件调用和 ShowHomePage 都在一个 javascript 文件中找到,该文件在 Home.html 的 div data-role="page" 的结束标记之前被调用
<script src="js/page.js"></script>
当用户点击任何列表项时,我使用 Index.html 中使用的相同事件将他们导航到外部 Activity.html 页面
$( ":mobile-pagecontainer" ).pagecontainer( "change","activity.html", {
transition: "slide",
reverse: false,
changeHash: true,
reload:false
});
Activity.html 中的后退箭头具有 data-transition="slide" data-direction="reverse" data-rel="back" 属性,可以很好地触发返回 Home.html,但是整个页面会得到再次完全重新加载,我只是希望它返回到前一页状态而不重新加载和重新绑定所有内容。对我来说奇怪的是,如果我从 Home.html 而不是 Index.html 开始流程(我的意思是如果我没有登录并直接转到 home.html),然后点击一个列表项并再次返回,页面完全按照我想要的方式工作(不再重新加载)。
任何想法如何克服这个问题?提前致谢。
【问题讨论】:
标签: javascript jquery html jquery-mobile