2009-09-25 15 views

risposta

11

La soluzione è quella di aggiungere questo al vostro file CSS:

.ui-widget-overlay { 
    position: fixed; 
} 

reference

+0

Ci scusiamo per aver accettato la mia risposta, ma penso che sia la soluzione migliore. Non supportato da IE6, ma IE6 ha comunque un percorso di codice diverso nel relativo codice jQuery (e non so se c'è un problema). – erikkallen

+0

Questo lo ha risolto per me! Utilizzo di JQuery 1.6 e JQuery UI 1.8.13. Le finestre di dialogo Modali hanno causato il 100% di utilizzo della CPU in IE7. Non è stato possibile determinare l'altezza del DIV di sovrapposizione utilizzato nel comportamento "Modale". Aggiungendo questo al CSS, ho risolto i miei problemi. Grazie! – Sentient

+0

Risolto per me su IE7. Sei un vero toccasana! – Nils

4

Ho visto cose come questa accadere quando qualcosa riempie un contenitore al 100% di larghezza e altezza e quel contenitore ha overflow: auto. Il che fa rimbalzare avanti e indietro all'infinito cercando di adattarsi al contenitore, ma poi il contenitore aggiunge o rimuove le barre di scorrimento. Non so se questo è applicabile alla tua situazione, ma forse qualcosa di simile.

+0

Cosa intendi con riempire un contenitore? Ci sono barre di scorrimento sul documento per me quando apro la finestra di dialogo, quindi probabilmente hai almeno in parte ragione. Tuttavia, il corpo non è nemmeno vicino al pieno di cose. – erikkallen

+0

Intendo quando un elemento interno ha la stessa dimensione di (o leggermente più grande di) un elemento genitore. Se vedi barre di scorrimento, sembra che questo stia accadendo a te. Hai bisogno di scoprire quale elemento sta facendo questo, e lo stile in modo che rimanga più piccolo dell'elemento genitore. L'utilizzo della CPU è dovuto al ripetuto riflusso che si verifica quando le barre di scorrimento vengono aggiunte e rimosse ripetutamente. Potresti considerare semplicemente l'impostazione del corpo per l'overflow: nascosto mentre appare la finestra di dialogo, quindi torna a qualsiasi cosa fosse dopo che è stato chiuso. – lod3n

+0

Grazie. Questa soluzione funziona, ma è un po 'troppo macchinosa (si pensi dialoghi nidificati). Lo accetterò se nessuno ha un'idea migliore. – erikkallen

Problemi correlati