2013-04-21 24 views
9

Ho impostato lo apple-mobile-web-app-capable su true nella sezione head della mia app Web. Tutto sommato, Chrome cerca di nascondere la barra degli indirizzi quando possibile per dare più spazio all'app Web.Rileva quando viene visualizzata la barra degli indirizzi di Chrome per iOS

Il problema è che la navigazione della mia app è in alto e va dietro la barra degli indirizzi durante quel periodo. Mi stavo chiedendo se c'è un modo in cui posso rilevare quando viene visualizzata la barra degli indirizzi e rilasciare la navigazione sotto la barra degli indirizzi.

Se rimuovo il meta tag apple-mobile-web-app-capable, viene visualizzata la barra degli indirizzi, ma la navigazione continua ancora dietro di esso. Per qualche motivo, Chrome imposta le dimensioni della finestra sulla dimensione dello schermo, ma trascina la barra degli indirizzi su di essa.

Qualcuno è a conoscenza di soluzioni?

+1

Anche questo mi sta facendo impazzire. Esattamente lo stesso problema. Quando il delta di scorrimento dell'utente è negativo, viene visualizzata la barra degli indirizzi, che nasconde la mia navigazione. L'evento di ridimensionamento è anche sparato. – oliverseal

+0

Sì, non sono stato in grado di trovare una soluzione adeguata a questo finora. – Mehdi

+0

Mehdi: il problema è stato risolto. Anch'io sto affrontando lo stesso problema. – Wasim

risposta

4

C'è una soluzione attorno a questo in realtà; devi solo forzare la tua app a scorrere verso il basso di 1px (sufficiente a nascondere la barra degli indirizzi di Chrome):

setTimeout(function() { 
    // Already scrolled? 
    if(window.pageYOffset !== 0) return; 

    window.scrollTo(0, window.pageYOffset + 1); 
}, 1); 
+1

Grazie, ma questo non funziona. La barra degli indirizzi si nasconde come sempre, ma per farlo occorrono alcuni secondi. Se rimuovo il tag 'apple-mobile-web-app-capable', la barra degli indirizzi rimane lì, ma copre ancora la mia navigazione in alto. Questo è quello che ho trovato, potrebbe essere un bug in quanto non si verifica nelle versioni precedenti di Chrome. http://productforums.google.com/forum/#!msg/chrome/nR1c6xyn13g/7gy-RKvxa04J – Mehdi

+0

Questo ha funzionato per il mio caso ... grazie per aver condiviso! – occasl

+0

@Mehdi: il problema è stato risolto. Anch'io sto affrontando lo stesso problema :( – Wasim

Problemi correlati