2013-02-21 3 views
8

Nel mio sito JQuery Mobile ho aggiunto una finestra di dialogo per la descrizione degli strumenti da aprire quando la pagina viene caricata e scomparirà dopo 5 secondi . Il mio codice è simile al seguente,La funzione popup di JQuery mobile tool tip ("chiudi") non funziona in IPhone 5

<div data-role="popup" id="popupInfo"> 
    <p>This is a completely basic popup, no options set.<p> 
    </div> 

    <script type="text/javascript"> 
$(document).live('pagechange',function(event){ 
    $('#popupInfo').popup("open") 
     setTimeout(function() { 
     $('#popupInfo').popup("close"); 
     }, 5000); 
    }); 
    </script> 

Questo aggiornamento funziona bene in tutti i dispositivi tranne in IPhone 5 iOS 6. Perché quando ho provato a caricare la mia pagina mobile JQuery con lo script sopra nel dispositivo IPhone 5 iOS 6 mi reindirizza alla pagina precedente quando il popup si chiude. Non sono sicuro di cosa mi sia mancato qui, ma per me sembra jQuery Mobile popup ("close") non supporta la funzione IPhone 5 iOS 6.

anche quando il carico tool-tip seguente hash tag di testo apposizione all'URL come possiamo evitare questo #&ui-state=dialog

Qualcuno potrebbe per favore fatemelo sapere come possiamo risolvere questo problema?

Ho anche provato a seguire il seguente codice;

$(document).on('pagechange',function(event){ 
     $('#popupInfo').popup("open").delay(2000).popup("close"); 

    }); 

Ma questo non funziona affatto

+0

Hai risolto? – Omar

+0

Un grande ringraziamento per aver seguito questa situazione. Ti aggiornerò presto su questo. –

risposta

14

ottenuto. Aggiungi data-history="false" al div Popup popupBasic.

<!-- Button/works without it --> 
<a href="#popupBasic" data-rel="popup">Open Popup</a> 

<!-- Popup #popupBasic --> 
<div data-role="popup" id="popupBasic" data-history="false"> 
<p>This is a completely basic popup.<p> 
</div> 

JS:

<script type="text/javascript"> 

$(document).live('pagechange',function(){ 
$('#popupBasic').popup("open") 
    setTimeout(function() { 
    $('#popupBasic').popup("close"); 
    }, 5000); 
}); 

</script> 

JSfiddle: Popup

+0

Grazie per questo, ma il problema rimane. Plase controlla il mio file di test con l'emulatore online. Link di test: ** http: //www.apartmentslanka.com/ztest_calender/zfr/index_a.html**. Link all'emulatore online: ** http: //iphonetester.com/** –

+0

Controlla la risposta aggiornata. – Omar

+0

Questo ora funziona benissimo! e ancora grande Grazie per te. –

1

anche alternatively..jquery cellulare circondata da uno splendido pop-up con un div con ID = "yourpopupid-popup" Così si può semplicemente nascondere quel div.

ad esempio: < div id = "basic" data-role = "popup"> Io sono pop-up </div> , allora si può chiuderlo: $ ('# base-popup ') nascondere().;

1

Usa due funzioni hide() oppure è possibile utilizzare funzione di chiusura() sul clic sul pulsante

0

Ho affrontato lo stesso problema nel usando popup per il menu della barra degli strumenti (jQuery Mobile 1.2). Ad esempio:

<a href="#popupBasic" data-rel="popup">Open Popup</a> 

<!-- Popup #popupBasic --> 
<div data-role="popup" id="popupBasic" data-history="false"> 
<ul data-role="listview" data-inset="true"> 
<li><a href='item1.html'>Item1</a></li> 
</ul> 
</div> 

Sopra il codice non funziona su iPhone 5 (ma funziona su Android, iPhone4 ecc.). Se lo cambio come sotto funziona.

<a data-ajax="false" href='item1.html'>Item1</a>