我开始真正讨厌JQuery Mobile,但必须坚持下去。非常感谢任何有关此问题的帮助!
好的,我有一个启动页面只检查一些东西,如果一切正常,它会将用户发送到另一个页面。我不希望通过AJAX加载新页面,所以我这样做:
window.location.href = "main.html";
在main.html页面上,我在文件的第一个“页面”上有一个Popup:
<div data-role="page" data-theme="b" id="MenuPage">
<div data-role="content" style="padding: 10px; padding-top:0px;" id="MenuBody">
...stuff and things...
</div>
<div data-role="popup" id="TapPanel" data-theme="b" data-add-back-btn="false">
<h3>Navigation</h3>
<p>To return to this menu from any other screen, tap the logo shown above.</p>
</div>
</div>
在Javascript中,我将弹出窗口设置为首次加载页面时使用:
$(function () {
setTimeout($("#TapPanel").popup("open", { x: 10, y: 140 }), 1500);
});
问题在于,当我点击/点击此弹出消息的任何地方(最终只会在第一次显示)时,它会尝试“返回”到调用此消息的页面,该页面只会重新打开此消息 - 重新显示弹出窗口。换句话说,一旦显示弹出窗口我就无法摆脱它。这只是有悖常理!更糟糕的是,弹出窗口之前关闭得很好,我不知道是什么让它开始这样做。
正如您所看到的,我尝试过“data-add-back-btn ='false'”,但这没有帮助。
我也在使用jquery-1.10.2和jquery.mobile-1.3.2。任何帮助将非常感激。
答案 0 :(得分:3)
要阻止弹出窗口在关闭/隐藏后更改URL,请将data-history="false"
属性添加到弹出窗口div。或以编程方式设置$('#popup').popup({ history: false });
。