jquerymobile对话框在页面加载后关闭

jquery mobile dialog closes after page loads

本文关键字:加载 对话框 jquerymobile      更新时间:2023-09-26

各位,我遇到了一个问题,希望有人能帮忙。当我的jquery移动应用程序加载时,它会检查我的服务器,看看用户所在平台是否存在本机应用程序。如果存在,我会弹出一个对话框,询问他们是否愿意下载本机应用。问题是,我把这个复选框放在哪里似乎并不重要,当页面在mobilesafari中加载完成时,对话框就会消失。这是我开始检查的代码:

$( document ).ready(function() {
  checkRedirect();
});

但我也尝试过pageinit和pagecreate。checkRedirect()进行ajax调用,并根据结果弹出带有"$.mobile.changePage"的对话框

浏览器似乎仍然认为原始页面正在加载,然后在页面加载完成后以某种方式关闭对话框。对不起,我没有更多的细节。我想我需要的是在整个页面加载之后(以及在所有ajax后台加载之后)发生的事件,但我一直找不到。如有任何帮助或建议,我们将不胜感激。

更新:在与Omar讨论后,发现使用"弹出菜单"而不是对话框符合我的要求。

首先,在jQuery Mobile中使用.ready()是不正确的,请使用jQuery Mobile事件。

一旦发生任何页面事件,您需要延迟打开对话框/弹出窗口,以确保页面已完全加载。

setTimeout(function () {
 $.mobile.changePage('#dialog');
}, 50);

更新:

根据我们的讨论,在您的情况下,使用jQM弹出窗口小部件更可靠。