【问题标题】:Dialog page disappears after about 2 seconds?对话页面在大约 2 秒后消失?
【发布时间】:2017-05-28 09:02:54
【问题描述】:

我在http://elementmedia.design/vawe-app/www/index.html有一个页面

我遇到的问题是,当用户未登录时应该弹出一个对话框(这有效),但它会在 2 秒后消失。我已经尝试了我能想到的一切来弄清楚为什么会发生这种情况,但无济于事。

有人有什么想法吗?随意查看现场演示页面的源代码。谢谢!

【问题讨论】:

  • id 给了我一个 HTTP404: NOT FOUND - 服务器没有找到任何匹配请求的 URI(统一资源标识符)。错误
  • 这是一个错误,因为这些脚本属于 cordova 应用程序,当编译应用程序时,这些脚本就变得必要了。为了在网络上进行测试,它会在缺少脚本时返回 404。我确实知道这不是我遇到的问题的根源。
  • @MatthewWalker 我注意到您在 HTML 之外有一个 style 标记。同样附加到#page1 就绪,可能意味着文档的其他部分尚未完成加载;因此,焦点返回到页面而不是对话框。
  • 谢谢@Twisty,我将它设置为 $(document) 并且它似乎修复了它。

标签: php jquery ajax jquery-mobile


【解决方案1】:

我建议如下:

$("#page1").ready(function(event) {
  $.ajax({
    url: "login.php",
    success: function(data) {
      if (data == "false") {
        $.mobile.changePage("#login-page", { role: "dialog"});
      }
    }
  });
});

见:https://api.jquerymobile.com/dialog/

您可以通过调用 $.mobile.changePage 方法以编程方式打开对话框:

// Dialog loaded via Ajax

$.mobile.changePage( "path/to/dialog.html", { role: "dialog" } );

// Dialog present in a multipage document

$.mobile.changePage( "#myDialog", { role: "dialog" } );

【讨论】:

  • 从 1.4 开始,$.mobile.changePage() 不是已弃用吗?
猜你喜欢
  • 2016-12-16
  • 2011-08-29
  • 2023-01-28
  • 1970-01-01
  • 2012-06-04
  • 1970-01-01
  • 1970-01-01
  • 2010-10-27
  • 1970-01-01
相关资源
最近更新 更多