0

我需要在启动时更改为不同的页面,我希望它是一个对话框。 这适用于 1.2,适用于 1.3 中的 IE 和 FireFox。 Chrome 显示对话框,然后立即返回到第一页。如果我删除“角色:对话框”,它适用于所有人。我尝试了一个隐藏的超链接,我强制点击...相同的结果。Chrome(最新版本)恢复到 page1。

有想法该怎么解决这个吗?

这是一个简化的小提琴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' });
        });
4

1 回答 1

2

快速解决方法,直到解决此问题:将 changePage 方法包装在 setTimeout ...

$(document).delegate("#page1", "pageinit", function () {
    setTimeout(function () {
        $.mobile.changePage('#page2', { transition: 'pop', role: 'dialog' });
    }, 100);
});
于 2013-02-25T19:16:55.220 回答