Me hice esta pregunta recientemente y cuando la miro a través del depurador de Chrome parecería que están usando algunas técnicas que son más avanzadas que la sección de la pantalla en áreas resaltadas y no resaltadas.
Lo primero que se debe tener en cuenta es que google usa 5 iframes para lograr su sistema de comentarios.
google-feedback-mask-frame
: Esto se usa solo para la máscara, cubre toda la pantalla. No estoy seguro de por qué eligieron usar un iframe completo para esto. Pero sirve para asegurarse de no hacer clic en ningún enlace de página en el modo de retroalimentación
google-feedback-screenshot-frame
: aquí es donde la magia real sucede, sospecho. Contiene una copia de la página que estaba viendo, pero con algunas etiquetas HTML propietarias (<gft></gft>
) para que la secuencia de comandos sepa dónde se encuentra el contenido resaltable (imágenes, texto, enlaces, etc.)
google-feedback-feedback-frame
: Esto contiene los controles para las áreas resaltadas, así como también el botón X para todo el widget.
Para lograr el efecto, Google en realidad usa varias secciones como sugiere @Jani Hartikainen. En la captura de pantalla siguiente puede ver que cuando tiene varias selecciones hay bastantes div que deben crearse para acomodar el efecto.
estoy seguro de que hay un algoritmo muy complicado para averiguar dónde de todos los div van, pero eso es lo que hace que la diversión dev software adecuado ??
google-feedback-proxy-frame
: tiene los controles que se ven en la parte inferior derecha.
google-feedback-render-frame
: Este es un poco más misterioso, todo lo que contiene es un script llamado render_frame.js que es obviamente ofuscado e ilegible.
En conclusión, usar secciones ES es la forma en que Google lo hace, pero hay mucha más magia que les permite resaltar automáticamente enlaces e imágenes. Si descubres más, también estoy realmente interesado, ¡házmelo saber!
¿Está buscando simplemente crear el efecto o está tratando de imitar algunas de las funciones subyacentes también? Si lo miras en el depurador Chrome, está claro que hay un sistema realmente complicado debajo. –