1

我正在尝试使用 jQuery Mobile 和 Rails 打开页面加载弹出窗口。

可以使用链接打开弹出窗口,但我无法在加载时打开它。

HTML 代码

<div data-role="popup" id="popup-choix" data-history="false" data-overlay-theme="a" data-transition="flow" data-position-to="window">
    <ul>...</ul>
</div>

Javascript代码

$(document).on("pageshow", function() {
  $('#popup-choix').popup('open'); 
});

我检查了 Chrome 并且 Javascript 正确链接到页面。

我在页面上有一个链接可以打开弹出窗口。它完美地工作。

<div class="div-popup"><a href="#popup-choix" data-rel="popup">...</a></div>

我想问题出在我的Javascript上......


更新

我将 Javascript 放在 中popup.js,然后使用application.js清单调用它。

更新 2

我在popup.js中编写了 javascript 并使用manifest调用它。

4

1 回答 1

4

更新

注意:对于Ruby on Rails用户,请阅读此评论

一旦页面加载/显示,这是打开弹出窗口的正确方法。

$(document).on("pageshow", function() {
 $('#popup-choix').popup('open');
});

在某些浏览器中,一旦页面加载,弹出窗口就不会显示,因此,添加超时以打开弹出窗口是必不可少的。

来源

$(document).on("pageshow", function() {
 setTimeout(function () {
    $('#popup-choix').popup('open');
 }, 100); // delay above zero
});

如果要打开特定页面,请添加'#PageId'而不是document.

于 2013-04-01T06:02:02.090 回答