1

我根据http://jquerymobile.com/test/docs/pages/popup/index.html调用 close ,但什么也没发生(显然我希望它在这种情况下根本不会显示):

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html> 
<head> 
    <title>popup</title> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />
    <script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
    <script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>
    <meta http-equiv="Content-Type" content="text/html; charset= ISO-8859-5">
    <script>
    $(document).ready(function () {
        $("#popupBasic").popup();
        $("#popupBasic").popup("open");
        $("#popupBasic").popup("close");
    });
    </script>
</head> 
<body> 

<div data-role="page">
    <div data-role="popup" id="popupBasic">
        <p>This is a completely basic popup, no options set.</p>
    </div>

</div>

</body>
</html>
4

2 回答 2

2

将您的脚本放入正文中,它可以工作,我还添加了一个标题

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
    <title>popup</title>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />
    <script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
    <script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>
    <meta http-equiv="Content-Type" content="text/html; charset= ISO-8859-5">
</head>
<body>

  <div data-role="page" id="myPage">
    <div data-role="content">
      <h1>Popup</h1>
      <div data-role="popup" id="popupBasic">
        <p>This is a completely basic popup, no options set.</p>
      </div>
    </div>

    <script>
      $(document).bind('pageinit', function() {
        setTimeout(function(){
          $("#popupBasic").popup();
          $("#popupBasic").popup("open");
          $("#popupBasic").popup("close");
        }, 100);
      });
    </script>
  </div>

</body>
</html>

编辑:使用$(document).bind('pageinit')而不是这里$(document).ready()描述的,现在添加了 100 毫秒的短暂延迟。现在可以在 Firefox Nightly 和 Chrome 中使用...

于 2012-10-31T19:14:23.273 回答
0

我曾经也有过一样的问题。我的代码中有一个带有警报的导航事件,并且警报指示在 chrome 中弹出后调用导航事件,并且由于 jQM 没有将弹出页面写入历史记录,因此您将返回 chrome 的第一个欢迎页面。

我还没有解决这个问题,所以我使用了这个插件:

Dmitry Semenov 的 Magnific Popup v0.9.4

在我的 jQM“pageshow”事件中直接通过 API 打开弹出窗口。这是页面: http: //kancelaria.danekilian2.pl/

于 2013-08-21T14:28:14.567 回答