Sto visualizzando il valore di document.body.scrollTop nella barra di stato mentre si sposta il mouse. Il valore è sempre 0 in IE. Perché è sempre 0? C'è un altro modo per ottenere quanto la barra di scorrimento è stata spostata?document.body.scrollTop è sempre 0 in IE anche quando si scorre
risposta
Si consiglia di provare questo per un doctype più anziano in IE:
var top = (document.documentElement && document.documentElement.scrollTop) ||
document.body.scrollTop;
Non sarebbe bomba se 'documento.documentElement' non è definito? Penso che tu intendessi 'document.documentElement' invece di' document.documentElement.scrollTop' nella prima parte dell'espressione ternaria. :) –
@Vivin - Non è indefinito, la proprietà scroll non è impostata, risultando in 0/false. –
Questo può essere abbreviato in 'var top = document.documentElement.scrollTop || document.body.scrollTop; ' –
A seconda del DOCTYPE, è necessario utilizzare document.body.scrollTop
o document.documentElement.scrollTop
. Hai provato il secondo?
Si può fare qualcosa di simile:
var scrollTop = document.documentElement ? document.documentElement.scrollTop :
document.body.scrollTop;
mi sono imbattuto in questi collegamenti, mentre la ricerca il problema:
- Window size and scrolling (verso il basso)
- document.body.scrollTop in IE
Questo potrebbe aiutarti un po 'di più.
questa funzione fornisce un'implementazione cross-browser di leggere l'offset di scorrimento:
function posTop() {
return typeof window.pageYOffset != 'undefined' ? window.pageYOffset: document.documentElement.scrollTop? document.documentElement.scrollTop: document.body.scrollTop? document.body.scrollTop:0;
}
Grazie, questa è l'unica risposta che funziona in entrambe le versioni precedenti di IE come ultima versione di Chrome. – Kamelkent
- 1. indexPath.row è sempre 0
- 2. L'equalizzatore non è sempre supportato, anche quando api> = 9?
- 3. StaggeredGridLayout scombina quando si scorre fino
- 4. Jquery nav appiccicoso quando si scorre fino
- 5. Vim/MacVim: quando si scorre con il mouse, si sposta anche il cursore del testo!
- 6. cmd msbuild errorlevel è sempre 0
- 7. textview.getLineCount sempre 0 in android
- 8. ListView "coming back" quando si scorre
- 9. Spiegare perché scrollTop() restituisce sempre 0 qui
- 10. : il risultatoCodice di onActivityResult è sempre 0
- 11. Lo sfondo di Android scorre anche a destra e a sinistra quando si scorre la schermata iniziale
- 12. WMPLib: player.mediaCollection.getAll(). Count è sempre 0
- 13. Le mie cardview non verranno sempre ignorate quando si scorre verso sinistra o destra?
- 14. jQuery: Rileva quando si scorre l'elemento su
- 15. Avvia l'animazione quando si scorre su
- 16. Disattiva ListView Scorrimento quando si scorre ViewPager
- 17. RecyclerView scorre per terminare dopo smoothScrollToPosition (0)
- 18. document.querySelectorTutta la lunghezza è sempre 0
- 19. funzioni Elimina Elimina anche quando si chiama applicazione è chiusa
- 20. La finestra di dialogo jQueryUI scorre in alto quando si fa clic sul pulsante Chiudi in IE
- 21. Application.OpenForms.Count = 0 sempre
- 22. mysql_affected_rows() restituisce 0 per l'istruzione UPDATE anche quando si verifica effettivamente un aggiornamento
- 23. getHistorySize() restituisce 0 anche sugli eventi MotionEvent.ACTION_MOVE
- 24. gc viene sempre invocato, anche quando lo spazio heap è continuamente disponibile in fase di esecuzione?
- 25. MongoDB: WriteResult.getN() restituisce sempre 0?
- 26. Controllo UIPageViewController quando si scorre indietro o in avanti
- 27. ACAccountType mostra sempre 0 account
- 28. Selenio: JUnit4: WebDriver: IE: NoSuchElementException quando si utilizza IE
- 29. Emberjs scorre verso l'alto quando si cambia vista
- 30. Area bianca su sfondo fisso quando si scorre su ios
Cosa DOCTYPE stai usando? –
Ho aumentato la risposta selezionata poiché nessun altro sembrava averlo fatto (a meno che non ci fosse un downvote per contrastarlo). Sarebbe stato bello se tu avessi risposto alla domanda di Nick. –