¿Es esto factible en IE7 o Firefox?¿Es posible obtener la posición de div en la ventana del navegador? No dentro del documento. Dentro de la ventana
Respuesta
Puede hacerlo en ambos: obtenga la posición relativa al documento, luego reste la posición de desplazamiento.
var e = document.getElementById('xxx');
var offset = {x:0,y:0};
while (e)
{
offset.x += e.offsetLeft;
offset.y += e.offsetTop;
e = e.offsetParent;
}
if (document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollLeft))
{
offset.x -= document.documentElement.scrollLeft;
offset.y -= document.documentElement.scrollTop;
}
else if (document.body && (document.body.scrollTop || document.body.scrollLeft))
{
offset.x -= document.body.scrollLeft;
offset.y -= document.body.scrollTop;
}
else if (window.pageXOffset || window.pageYOffset)
{
offset.x -= window.pageXOffset;
offset.y -= window.pageYOffset;
}
alert(offset.x + '\n' + offset.y);
Probar the dimensions jQuery plugin. Ver this demo.
$('#myelement.').offset();
Usted podría restar offsetTop del div de la document.body.scrollTop
Esto parece funcionar en IE7 y FF3, pero en una página muy simple. No he verificado con DIV anidados.
No, la única offsetTop muestra la posición dentro de la div padre. Esto funciona para el div de nivel superior y falla con otros. Observe cómo la primera respuesta se acerca a través de los padres acumulando compensaciones. – mmaclaurin
Usando Prototipo sería:
$('divname').viewportOffset.top
$('divname').viewportOffset.left
En IE y Firefox 3, se puede utilizar para este getBoundingClientRect; sin marco necesario.
Pero, sí, debería usar un marco si necesita admitir otros navegadores también.
[Pegar de la respuesta que dio here]
El getBoundingClientRect()
método nativo ha sido de alrededor durante bastante tiempo, y hace exactamente lo que la pregunta se refiere. Además de que es compatible con todos los navegadores (como Internet Explorer 5, que parece!)
De this página MDN:
El valor devuelto es un objeto TextRectangle, que contiene sólo lectura a la izquierda, arriba, derecha e inferior propiedades que describen el cuadro de borde, en píxeles, con la esquina superior izquierda relativa a la esquina superior izquierda de la ventana gráfica.
que lo utilice de esta manera:
var viewportOffset = el.getBoundingClientRect();
// these are relative to the viewport, i.e. the window
var top = viewportOffset.top;
var left = viewportOffset.left;
- 1. ¿Determinando la posición de la ventana del navegador en JavaScript?
- 2. carga de la ventana dentro de un documento listo?
- 3. Crear un navegador de ventana dentro del navegador con extjs
- 4. Obtener la posición actual de la ventana superior en relación con el cuerpo del documento
- 5. Obtener la posición de la ventana del navegador independientemente del zoom
- 6. ¿Cómo obtener la posición superior de un elemento con respecto a la ventana del navegador?
- 7. GWT Ventana emergente en la nueva ventana del navegador
- 8. Obtener la posición del texto dentro de un elemento
- 9. Minimizar la ventana del navegador usando javascript
- 10. iPhone - Obtener la posición de UIView dentro de todo UIWindow
- 11. cambiar dinámicamente el tamaño div en función del tamaño de la ventana del navegador
- 12. Los divs HTML pueden salir de la ventana del navegador?
- 13. cómo obtener la altura exacta del cuerpo de la ventana del navegador web?
- 14. obteniendo la posición del mouse con javascript dentro del lienzo
- 15. Posición de Div en relación con la parte superior de la ventana gráfica
- 16. Cómo agregar la ventana del marcador de posición en Xcode
- 17. Imprimir dentro de la ventana, no en los bordes
- 18. HTML/Javascript: recuerde desplazamiento independiente del tamaño de la ventana
- 19. jquery - detectar si la parte inferior de la div está tocando la parte inferior de la ventana del navegador?
- 20. ¿Es posible obtener una ventana del navegador para actualizar mientras está en un bucle de Javascript?
- 21. ventana del navegador de redimensionamiento del navegador cruzado en JavaScript
- 22. Controlando la ventana del navegador a través de Javascript
- 23. ¿Cómo prevenir el cierre de la ventana del navegador?
- 24. Obtener la posición del ratón en div desplazable
- 25. Incrustar ventana del navegador web en Java
- 26. encontrar la posición del elemento relativa al documento
- 27. Javascript establece el tamaño de la ventana del navegador
- 28. Process.Start() obtener errores de la ventana del símbolo del sistema
- 29. ¿Puedo cambiar el tamaño de la ventana del navegador?
- 30. Obtener la altura de la ventana
Por favor reemplace 'position' con' offset' y 'bodt' con' body'. – suzanshakya
hats-off ... quien sea que haya escrito esto. – Varun
perfecto - ¡gracias! – Iamsamstimpson