web

Cargar sitios web de manera instantánea con instant.page

Mejorar y agilizar la carga de las páginas web precargando enlaces

Hace algún tiempo estuve presente en una conversación donde se discutía por qué las páginas de la documentación de cierto sitio web se cargaban de manera instantánea. Es decir, hacías click en un enlace y la carga era inmediata.

Analizando algunas cosas se descubrió que los componentes eran precargados cuando el usuario ponía el cursor sobre un enlace, es decir, cuando el usuario estaba a punto de hacer click para navegar a otro lugar.

Después de eso vi que se crearon muchas librerías, y justamente hoy vamos a ver cómo usar una de ellas para hacer más rápida la carga de una página web a la que navega el usuario: instant.page.

La ventaja de agilizar la carga de nuestros sitios web

Se supone que esto de la velocidad afecta o beneficia muchas cosas. Por ejemplo, un usuario puede abandonar nuestro sitio si tarda mucho en cargar, o no comprar algo en nuestra tienda en línea.

Funcionamiento de la librería

La librería funciona en móvil y PC (la diferencia es que en la PC hay un puntero y en el móvil no) detectando cuando un usuario está a punto de hacer click en un enlace.

Normalmente, antes de navegar a un enlace, ponemos el cursor sobre el enlace. Pues la librería aprovecha justamente ese instante (detecta si pusiste el cursor por más de 65 milisegundos) para cargar el enlace.

Cuando navegues al enlace, ya se habrá cargado y ahora se leerá desde el caché. Algo parecido sucede en el móvil.

De esta manera las páginas se “precargan” y el usuario percibe una mejora.

Precargar páginas con instant.page

Ahora sí a lo que venimos. No hay que saber mucho de programación, simplemente tienes que poner lo siguiente antes de cerrar tu etiqueta body:

<script src="//instant.page/1.1.0" type="module" integrity="sha384-EwBObn5QAxP8f09iemwAJljc+sU+eUXeL9vSBw1eNmVarwhKk2F9vBEpaN9rsrtp"></script>

Visita la página oficial para obtener una versión fresca del fragmento de código.

Después de incluir el script no tienes que hacer nada, la librería se encargará de precargar los enlaces por ti.

Demostración

Veamos este GIF en donde analizamos las peticiones de la red. Cuando ponemos el cursor sobre un enlace, se hace una nueva petición.

Demostrando precarga de página

Después, al navegar a dicho enlace, se carga del caché.

Omitir o forzar algunos enlaces

La librería indica que por defecto no precarga los enlaces que tienen parámetros get. Por ejemplo hola?parámetro=valor por los efectos colaterales que podría causar.

Si queremos forzar a que se precarguen cuando el usuario pone el cursor sobre ellos, les ponemos un atributo llamado data-instant a los elementos a. Así:

<a href="algun_enlace?hola=mundo" data-instant>Soy un enlace</a>

De la misma manera, si queremos forzar a que sean ignorados les ponemos un atributo llamado data-no-instant a los elementos a. Así:

<a href="algun_enlace?hola=mundo" data-no-instant>Soy un enlace que no se precarga</a>

Finalmente, si tenemos muchos enlaces con parámetros get y queremos que todos sean precargados, agregamos el atributo data-instant-allow-query-string al elemento body.

Conclusiones

Cabe mencionar que la librería no hace magia ni hará tu sitio web más rápido; simplemente precarga los enlaces. De ahí, el tiempo de respuesta y la cantidad de datos dependen del administrador de la web.

Por cierto, ya dije que la carga del script debe ser puesta en todos los lugares en donde se desee tener esta característica; y funciona para cualquier preprocesador de HTML, por ejemplo, PHP.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Entradas recientes

Servidor HTTP en Android con Flutter

El día de hoy te mostraré cómo crear un servidor HTTP (servidor web) en Android…

4 días hace

Imprimir automáticamente todos los PDF de una carpeta

En este post te voy a enseñar a designar una carpeta para imprimir todos los…

5 días hace

Guía para imprimir en plugin versión 1 desde Android

En este artículo te voy a enseñar la guía para imprimir en una impresora térmica…

1 semana hace

Añadir tasa de cambio en sistema de información

Hoy te voy a mostrar un ejemplo de programación para agregar un módulo de tasa…

2 semanas hace

Comprobar validez de licencia de plugin ESC POS

Los usuarios del plugin para impresoras térmicas pueden contratar licencias, y en ocasiones me han…

2 semanas hace

Imprimir euro € en impresora térmica

Hoy voy a enseñarte cómo imprimir el € en una impresora térmica. Vamos a ver…

4 semanas hace

Esta web usa cookies.