¿Es posible recuperar la posición geométrica (es decir, los desplazamientos superiores/izquierdos del elemento principal, la página, etc.) de un nodo de texto?Recuperación de la posición del nodo de texto DOM
Respuesta
No directamente. TextNode no tiene las extensiones originales de IE offset * (y similares) para medir el posicionamiento en la ventana gráfica.
En IE solamente, puede crear un objeto TextRange, intente laboriosamente alinearlo con los límites del TextNode, luego mida el boundingLeft/boundingTop del TextRange y agréguelo a la posición del elemento principal (obtenido por el medio usual). Sin embargo, este es un montón de trabajo para una solución de navegador único potencialmente inestable.
Otro enfoque con el que podría salirse con la suya sería envolviendo el texto en un elemento de tramo (ya sea en el documento, o dinámicamente y/o temporalmente por secuencia de comandos) y utilizando el tramo para medir el posicionamiento, suponiendo que no recogiendo cualquier estilo adicional que pueda afectar la posición. Sin embargo, tenga en cuenta que un tramo envolvente puede no dar los valores esperados derecho/inferior; dependiendo de lo que quieras hacer con él, podrías terminar envolviendo el primer y el último personaje o algún otro arreglo.
En resumen: urgh, nada bueno.
Eche un vistazo a this article - usa la propiedad offsetParent para descubrir recursivamente el desplazamiento.
Siempre recomendaría jquery sobre rodar sus propios métodos para cosas que varían en el navegador como esta. ¡El jquery CSS functions parece tener los métodos que necesitas!
Desafortunadamente, los nodos de texto DOM no parecen tener propiedades offsetLeft/offsetTop. Y jQuery tampoco maneja bien los nodos de texto: no pude averiguar cómo escribir una expresión de selector para ellos (sin importar que children() no devuelva nodos de texto). – dpq
No hay ninguna forma incorporada de navegación cruzada para hacer esto. Me usar jQuery con el plugin Dimensiones: http://brandonaaron.net/docs/dimensions/
Es multi-navegador y le dará la altura, anchura y x & Y compensaciones, entre otros.
En estos días hay formas. Una forma: getBoundingRectangle: https://developer.mozilla.org/en-US/docs/Web/API/Element.getBoundingClientRect
clientRects no están disponibles para los nodos de texto. – Bruno
- 1. ¿Cómo recuperar el texto de un nodo de texto DOM?
- 2. Obteniendo el texto del nodo en PHP DOM
- 3. Javascript DOM, llegar texto del nodo sin perder información
- 4. Reemplazando del javascript dom text nodo
- 5. Seleccione el siguiente nodo del nodo seleccionado en PHP DOM?
- 6. Obtención del valor del texto del nodo XML con Java DOM
- 7. Buscar posición del nodo principal utilizando xpath
- 8. jQuery obtener nodo DOM?
- 9. ¿Cómo funciona la limpieza del nodo DOM en d3?
- 10. innerText/textContent frente a la recuperación de cada nodo de texto
- 11. Recuperación de la posición del carácter en caso de un evento sobre el mouse
- 12. Cómo forzar la posición del nodo (xey) en graphviz
- 13. Contenido del nodo de texto Nokogiri
- 14. ser elegida la posición del texto
- 15. UILabel - cómo cambiar la posición del texto
- 16. JCheckbox cambiar la posición del texto
- 17. ¿Cómo encuentro el nodo DOM que está en una posición determinada (X, Y)? (Prueba de impacto)
- 18. Recuperación de la eliminación accidental del storyboard
- 19. Envoltura de un nodo de texto seleccionado con span
- 20. Medir el cuadro delimitador del nodo de texto en Javascript
- 21. Insertar un nodo entre texto
- 22. Obtener la posición del texto dentro de un elemento
- 23. Establecer la posición del cursor en un widget de texto
- 24. Cómo determinar la posición del cursor de texto en Windows
- 25. ¿Cómo encontrar la posición global del cursor de texto?
- 26. Encontrar la posición del cursor en un cuadro de texto
- 27. Encontrar la posición del texto del cursor en JTextField
- 28. ¿Jquery copia y pega el nodo DOM?
- 29. XPath: seleccione nodo de texto
- 30. ¿Se garantiza que un nodo de texto DOM no se interpretará como HTML?
Usó su idea, ¡gracias por la información! http://stackoverflow.com/questions/6990350/jquery-get-text-currently-shown-ie-not-just-visible/6990382#6990382 – AlienWebguy
vergüenza, pero envolver en un lapso está modificando la página así que no me utilices – SuperUberDuper