我使用的是JQuery Mobile1.2.0 Alpha1。
目前,当我打开弹出窗口并在屏幕上的任何位置点击弹出窗口时,弹出窗口都会被关闭。我想知道是否有任何我错过的JQuery手机属性,可以设置和防止关闭弹出窗口时,外部点击?(模式弹出窗口)
(弹出窗口的文档可以在here中找到)
编辑:
我有一个解决这个问题的想法,但仍然不能实现它:
当一个JQM弹出窗口出现时,有一个div,它用ui- popup -screen类覆盖了整个屏幕。我想以某种方式给它一个大的z索引,并取消绑定所有的点击/点击函数。这样做并不能解决我的问题,但我想这是朝着这个方向迈出的一小步。
要提前做好准备。
发布于 2012-09-14 21:42:24
这已经被添加为Github上的一个功能请求。请参见issue here。
在此期间的一个技巧是在ui-popup-screen上解除绑定事件。我会把下面的代码放在pageinit中。
$("#yourPopupId").on({
popupbeforeposition: function () {
$('.ui-popup-screen').off();
}
});
这是一个笨手笨脚的快速修复,但它是有效的。
发布于 2013-09-25 00:01:12
对于未来的搜索者,从1.3开始,现在支持这一点。只需将data-dismissible="false"
属性添加到面板div。
发布于 2013-01-19 10:33:37
在@TheGwa的优秀解决方案的基础上,这里有一个概括,为即将到来的官方特性(可能是1.3版)做准备:
data-dismissible='false'
添加到所有弹出窗口的标记中。_
$(window).on('popupbeforeposition', 'div:jqmData(role="popup")', function() {
var notDismissible = $(this).jqmData('dismissible') === false;
if (notDismissible) {
$('.ui-popup-screen').off();
}
});
-
正式支持该功能后,只需删除事件处理程序即可。
请注意,遗憾的是,官方文档(从1.2中开始)表明该特性已经可用,但还没有-请参阅http://jquerymobile.com/test/docs/pages/popup/options.html
https://stackoverflow.com/questions/12246181
复制相似问题