Capítulo 11: El BOM y Web APIs Básicas
11.1. El objeto window y dimensiones del viewport
window y dimensiones del viewportPropiedades de dimensión:
// Tamaño de la ventana (viewport)
console.log(window.innerWidth); // Ancho usable (sin scrollbar)
console.log(window.innerHeight); // Alto usable
// Tamaño total del documento (puede ser mayor si hay scroll)
console.log(document.documentElement.scrollWidth);
console.log(document.documentElement.scrollHeight);
// Posición del scroll
console.log(window.scrollX); // Desplazamiento horizontal
console.log(window.scrollY); // Desplazamiento verticalEvento de redimensionamiento:
window.addEventListener('resize', () => {
console.log(`Nueva dimensión: ${window.innerWidth}x${window.innerHeight}`);
// Útil para layouts responsive
});11.2. localStorage y sessionStorage (Repaso práctico)
localStorage y sessionStorage (Repaso práctico)localStorage: Persiste incluso después de cerrar el navegador
localStorage: Persiste incluso después de cerrar el navegadorsessionStorage: Se elimina al cerrar el navegador
sessionStorage: Se elimina al cerrar el navegadorPatrón: Guardar objetos complejos
Evento de cambio (útil para sincronización entre pestañas)
11.3. Timers: setTimeout, setInterval, requestAnimationFrame
setTimeout, setInterval, requestAnimationFramesetTimeout: Ejecutar código después de un tiempo
setTimeout: Ejecutar código después de un tiemposetInterval: Ejecutar código repetidamente
setInterval: Ejecutar código repetidamenterequestAnimationFrame: Para animaciones suaves
requestAnimationFrame: Para animaciones suaves11.4. Objeto location: Trabajar con URLs
location: Trabajar con URLsPropiedades:
Métodos:
URLSearchParams: Parsear query strings
URLSearchParams: Parsear query strings11.5. Objeto history: Navegación del historial
history: Navegación del historial11.6. Patrón práctico: Tema persistente
Resumen del Capítulo
💡 Conceptos Clave:
🤔 Preguntas de Reflexión:
AnteriorCapítulo 10: El Flujo de Eventos (Propagation)SiguienteCapítulo 12: Buenas Prácticas y Proyecto Integrador
Última actualización
¿Te fue útil?