jQuery移动弹出窗口意外关闭?

时间:2017-01-12 22:01:54

标签: javascript jquery jquery-mobile popup

我使用以下脚本版本构建基于jQuery mobile的网站。

<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

我遇到弹出窗口的问题,由以下代码显示。

$(document).on("pagecontainershow", function(){
    if(onPgLd==true){
        onPgLd=false;
        $("#globPageLoad").popup("open");
    };
});

弹出窗口按照我的预期打开,但随后立即关闭。 我所拥有的唯一其他事件触发代码是在pagecreate块中,我理解在pagecontainershow之前完成。 是否有一个事件发生在post-pagecontainershow之后,或者是其他事情发生了? (我甚至添加了&#39;数据不允许=&#34;虚假&#34;&#39;对于偶然的机会它会产生影响。它没有......) 我只能在Chrome(笔记本电脑和移动设备)上测试该网站。 有什么想法吗?

看下面的评论后,没有人更聪明。小提琴完全按照我想要的方式工作,但是我无法通过编程方式查看它与我的代码的不同之处 - 在pagecreate期间调用.enhancewithin(),弹出窗口看起来与我一样#39;希望。

我尝试修改此功能;

$(document).on("pagecontainershow", function(event){
    console.log("pagecontainershow");
    //event.stopPropagation();
    if(onPgLd==true){
        onPgLd=false;
        $( "#globPageLoad" ).bind({
            popupafteropen: function(event) {
                event.stopPropagation();
                console.log("popupafteropen");
            }
        });
        $("#globPageLoad").popup("open");
        console.log("popup open");
    };
});

所有内容都按照我预期的顺序登录,但弹出窗口仍然消失。 另一条线索(我认为?)是网址后缀为&#34;#&amp; ui-state = dialog&#34;,这让我觉得这是一个小故障,因为弹出窗口没有被jQuery故意关闭? / p>

0 个答案:

没有答案