我需要在启动时更改为其他页面,我希望它是一个对话框。 这适用于1.2,适用于IE中的IE和FireFox。 Chrome会显示对话框,然后立即恢复到第一页。 如果我删除“角色:对话框”,它适用于所有人。我尝试了一个隐藏的超链接,我强制点击...相同的结果。 Chrome(最新版本)还原为第1页。
有关如何解决此问题的任何想法?
这是一个简化的小提琴http://jsfiddle.net/stocksp/P4ZWj/3/
div data-role="page" id="page1">
<div data-role="content">
<h6>page one content</h6>
</div>
</div>
<div data-role="page" id="page2">
<div data-role="header">
<h1 class="title">My DIALOG </h1>
</div><!-- /header -->
<div data-role="content">
Dialog Content
</div>
</div>
$(document).delegate("#page1", "pageinit", function () {
$.mobile.changePage('#page2', { transition: 'pop', role: 'dialog' });
});
答案 0 :(得分:2)
快速解决方法直到修复此问题:将changePage方法包装在setTimeout ...
中$(document).delegate("#page1", "pageinit", function () {
setTimeout(function () {
$.mobile.changePage('#page2', { transition: 'pop', role: 'dialog' });
}, 100);
});