Aunque en estos momentos es una tecnología todavía en desarrollo, la Network Information API, permitiría al navegador saber qué tipo de conexión tiene el usuario en todo momento, y, además saber si esta cambia.
A nivel general el sistema nos devuelve varios datos, el principal de ellos sería el tipo de conexión de forma básica con ConnectionType:
- bluetooth
- cellular
- ethernet
- mixed
- none
- other
- unknown
- wifi
- wimax
Aunque podríamos obtener los datos de la conexión efectiva con EffectiveConnectionType:
- 2g
- 3g
- 4g
- slow-2g
Con este sistema, y gracias a JavaScript, podríamos tomar decisiones a la hora de mostrar o no determinados elementos, como por ejemplo un vídeo.
let preloadVideo = true;
var connection = navigator.connection || navigator.mozConnection || navigator.webkitConnection;
if (connection) {
if (connection.effectiveType === 'cellular') {
preloadVideo = false;
}
}