web-dev-qa-db-fra.com

Comment déterminer la hauteur et la position de défilement de la fenêtre dans jQuery?

J'ai besoin de saisir la hauteur de la fenêtre et le décalage de défilement dans jQuery, mais je n'ai pas eu la moindre chance de trouver cela dans les documents jQuery ou Google.

Je suis sûr à 90% qu'il existe un moyen d'accéder à height et à scrollTop pour un élément (y compris vraisemblablement la fenêtre), mais je ne trouve pas la référence spécifique.

176
One Crayon

De jQuery Docs:

const height = $(window).height();
const scrollTop = $(window).scrollTop();

http://api.jquery.com/scrollTop/
http://api.jquery.com/height/

293
Pim Jager

from http://api.jquery.com/height/ (Remarque: différence entre l'utilisation de la fenêtre et de l'objet document)

$(window).height();   // returns height of browser viewport
$(document).height(); // returns height of HTML document

de http://api.jquery.com/scrollTop/

$(window).scrollTop() // return the number of pixels scrolled vertically
41
Aidamina
$(window).height()

$(window).width()

Il y a aussi un plugin à jQuery pour déterminer l'emplacement et les décalages des éléments

http://plugins.jquery.com/project/dimensions

scrolling offset = offsetHeight propriété d'un élément

6
Joey V.

Pure JS

window.innerHeight
window.scrollY

est plus de 10 fois plus rapide que jquery (et le code a une taille similaire):

 enter image description here

Ici, vous pouvez effectuer des tests sur votre machine: https://jsperf.com/window-height-width

0
Kamil Kiełczewski