jQuery Mobile 1.4嵌套弹出窗口

使用JQM 1.4,我再也无法从另一个弹出窗口打开一个新的弹出窗口。

Basic Popup 

This is a completely basic popup, no options set.

Another Popup

Another Popup

这在1.3版本中运行良好。 知道如何解决这个问题吗?

这来自于处理弹出窗口小部件内部链接的方式的变化。 在jQuery Mobile 1.3中,当前活动的弹出窗口被强行关闭,因此可以打开新的弹出窗口。 在jQuery Mobile 1.4中不再是这种情况。

要恢复以前的行为,您可以在mobileinit处理程序中修补$.mobile.popup.handleLink()

 $(document).on("mobileinit", function() { var originalHandleLink = $.mobile.popup.handleLink; $.mobile.popup.handleLink = function(link) { var activePopup = $.mobile.popup.active, path = $.mobile.path; if (activePopup) { var popup = $(path.hashToSelector( path.parseUrl(link.attr("href")).hash)).first(); if (popup.length > 0 && popup.data("mobile-popup")) { activePopup._close(true); } } originalHandleLink.apply(this, arguments); }; });