outerheight obtener innerheight div cambiar javascript jquery window height

javascript - obtener - set height jquery



La funciĆ³n Jquery $(window).height() no devuelve la altura real de la ventana (7)

Dado que jquery (y dom en general) no está calculando los tamaños correctamente en el modo quirks, dos soluciones:

  1. Agregue doctype html en la parte superior de su página (como se menciona en la respuesta "correcta"), o
  2. Use window.innerHeight, window.innerWidth si la primera opción no es una opción.

Espero eso ayude.

Tengo una página que necesito para cargar dinámicamente el contenido de ajax cuando el usuario se desplaza hacia abajo. El problema es que JQuery no devuelve la altura de ventana correcta. He usado esta función antes y nunca la he visto fallar, pero por alguna razón devolverá el mismo valor que la altura del documento. Tengo la página de prueba aquí: bangstyle.com/test-images

He codificado la alerta para mostrar en la carga de la página, y también cuando el usuario se desplaza 500px debajo de la parte superior:

function scroller() { if($(window).scrollTop() > 500){ delay(function(){ //200ms wait pagecounter++; sideshow(); alert("window height: " + $(window).height() + " scrolltop: " + $(window).scrollTop() + " document height: " + $(document).height()); return false; }, 200 ); } }

Intenté publicar esto antes, pero lo eliminé porque no obtuve una solución. Espero que esté bien publicar un enlace a mi página de prueba. Por cierto, he probado esto en Mac Safari y Mac FF. He ejecutado este mismo código en otras páginas y funciona bien. Siento que debe haber algo en el dominio de esta página que haga que JS falle, pero no tengo idea de lo que sería.


Esta es una pregunta antigua, pero recientemente tuve problemas para no obtener la altura de ventana correcta en IE10 por unos pocos píxeles.

Descubrí que IE10 aplica un zoom del 75% de forma predeterminada y que atornilla la ventana y documenta las medidas.

Por lo tanto, si el ancho o la altura son incorrectos, asegúrate de que el zoom esté configurado al 100%.



Mira tu código de fuente HTML. La primera línea debe ser <!DOCTYPE html> y tiene la etiqueta <style> lugar.

Por lo tanto, parece que su documento se está ejecutando en modo Quirks y jQuery no puede calcular las dimensiones correctas de la ventana.


Moví mis scripts de pie de página y eso lo resolví por mí.


Yo tuve el mismo problema. He encontrado algunas cosas:

1) el problema ocurre cuando intenta obtener la altura real antes de que se complete el procesamiento del documento; 2) el problema ocurre en google chrome cuando no usa el DOCTYPE corret (mencionado anteriormente) 3) siempre ocurre en google chrome incluso después de que el documento se haya procesado completamente.

Para google chrome, he encontrado una solución alternativa aquí: get-document-height-cross-browser Estoy usando esta solución solo para google chrome y resolví mi problema, espero que ayude a alguien que todavía tenga el problema.


//works in chrome $(window).bind(''scroll'', function(ev){ //get the viewport height. i.e. this is the viewable browser window height var clientHeight = document.body.clientHeight, //height of the window/document. $(window).height() and $(document).height() also return this value. windowHeight = $(this).outerHeight(), //current top position of the window scroll. Seems this *only* works when bound inside of a scoll event. scrollY = $(this).scrollTop(); if( windowHeight - clientHeight === scrollY ){ console.log(''bottom''); } });