如何以编程方式立即关闭并打开jQuery Mobile中的弹出窗口?

时间:2015-04-22 07:18:44

标签: jquery jquery-mobile javascript-events popup

一般

我希望在我的网页的一个弹出窗口中实现一个教程。为了使它在视觉上看起来像多个弹出窗口,它必须出现,消失并改变内容。从概念上讲是

("#thePopup").popup("close").html(myContent).popup("open")

但它不起作用,因为.popup("close")通常在.popup("open")之后执行。我想出了一个解决方法工作代码,如下所示,但它没有弹出history功能。有没有办法使它工作,并具有history功能?为了理解,为什么history=false对于以下代码起作用至关重要?

代码(fiddle

HTML:

<div id="ppp" data-role="popup">
    <a href="#" id="btn" class="ui-btn">Click me</a>
</div>

使用Javascript:

$("#pppInfo").click( function() { 
    $("#ppp")
        .on( "popupafterclose", function( event, ui ) {
            $("#ppp")
                .off( "popupafterclose" )
                .popup( "open" );})
        .html("Other content")
        .popup( "option", "arrow", true ) // Do some formatting
        .popup( "close" );
});

// Uncomment to get a working workaround.
//$("#ppp").popup( "option", "history", false); 

history=true时,在使用firebug的firefox中,我看到的不是单个事件,而是多个事件。第一个触发侦听器,但后来再触发它。有时2,有时连续3次打电话。 为什么?在大多数情况下,晚期事件关闭打开弹出窗口,如果浏览器滞后弹出窗口可以看到一个milisec。很少和随机(在刷新之后它可能再次“正常”)一些非常奇怪的事情发生,就像所有页面被弹出一样。

相关/类似问题

Opening a popup window from another popup

jQuery mobile popup is not closing

How can I open a second jquery-mobile popup from the first popup

Is it possible to open popup in popup(parent) in jquery mobile?

0 个答案:

没有答案