在jQuery mobile中链接对话框:第二个对话框在Android中消失

时间:2012-11-03 11:58:22

标签: android jquery facebook jquery-mobile jquery-chaining

我正在使用jQuery mobile开发一个Facebook应用程序,我在其中创建一个对话框,创建第二个对话框(链接)。

问题是,对于Android和Opera,第二个对话框会显示一秒钟,然后消失。

有没有办法避免这种行为? 否则,如何在不破坏第二个对话框的情况下销毁第一个对话框?

CODE:

function function1(item) {        
       showDialog(..., function(){
               ...
               if (appInstalled == true) {                        
                       if(function2(item) == true) { 
                               //call to alert dialog function2
                       }
               } 
       });
}

function function2(item) {
       if (...) {
               showAlertDialog(item.name, messages.MATCH_CONFIRMATION_MSG, item.picture.data.url, '#friendsPage');
               $('#dialog').dialog('close');
               $('#alertDialogTrickLink').click();//this is event for going to dialog 
       } 

}

function showDialog(title, content, img, hrefURL, hrefURLcancel, callbackFunction) {
       $('#dialog-content').html(content);
       $('#dialogHeader').text(title);
       if (img != null) {
               $('#dialog-img').html('<img src="' + img +'" alt="" class="bigImg" />');
       } else {
               $('#dialog-img').html('');
       }
       var a = messages.ACCEPT_BUTTON_TEXT;
       var c = messages.CANCEL_BUTTON_TEXT;
       $('#dialogActions').html(
               '<a href="' + hrefURL + '" data-role="button" data-theme="c" id="confirmDialogAction" data-icon="check" data-iconpos="left">' + a + '</a>' +       
               '<a href="' + hrefURLcancel + '" data-role="button" id="skipDialogAction" data-icon="delete" data-iconpos="left">' + c + '</a>'
       );
       $('#confirmDialogAction').click(function(e) {
               e.preventDefault();
               callbackFunction();
       });
       $('#dialog').trigger('create');
}

感谢工厂

1 个答案:

答案 0 :(得分:1)

您是否尝试过此处所述的setTimeout方法Note: Chaining of popups not allowed