jQuery Mobile 1.4+页面容器

jQuery Mobile 1.4+页面容器,jquery,jquery-mobile,Jquery,Jquery Mobile,也许这里有人可以对下面概述的行为提出一些见解 工作-即显示id为PageAlReadyDOM的页面 $(':mobile-pagecontainer').pagecontainer('change','#pageAlreadyInDOM'); 页面已加载但未显示 $(':mobile-pagecontainer').pagecontainer('load','external.html'); 经核查 $('body').on('pagecontainerload',function(e,u

也许这里有人可以对下面概述的行为提出一些见解

工作-即显示id为PageAlReadyDOM的页面

 $(':mobile-pagecontainer').pagecontainer('change','#pageAlreadyInDOM');
页面已加载但未显示

$(':mobile-pagecontainer').pagecontainer('load','external.html');
经核查

$('body').on('pagecontainerload',function(e,ui){console.log(ui.toPage);});
再往前走一步

$('body').on('pagecontainerload',function(e,ui)
{$(':mobile-pagecontainer').pagecontainer('change','#externalPageID');;});
不执行任何操作-即不显示id为externalPageID的页面

$(':mobile-pagecontainer').pagecontainer('load','external.html');
与此同时,

<a href='external.html' data-role='button'>Load External</a>

不会生成预期的控制台消息


如果

看起来我错了,可以同时使用散列和文件名编辑:按ID更改页面只工作一次。按文件名更改页面不会产生任何问题。哈希只会工作一次,因为页面一旦隐藏,就会从DOM中删除,除非它被缓存。谢谢Omar-一些非常有见地的评论。不客气,我的回答没有用,因为上面的代码应该可以正常工作。演示说明了这一切:
$('body').on('pagecontainerremove',function(e,ui){console.log(ui.toPage);console.log('page removed');})