web

Cambiar título de página cuando el usuario cambia de pestaña

Introducción

El otro día estaba en una página de noticias leyendo un artículo. Dejé de leerlo y navegué a otra pestaña, pero al cambiar de pestaña el título fue cambiado a “Hey, vuelve aquí” o algo así. Entonces me pregunté cómo se puede cambiar título de página cuando el usuario cambia de pestaña.

Buscando por internet, y pensando un poco, me di cuenta de que se puede hacer con JavaScript en pocas líneas.

Cómo cambiar título de página cuando el usuario cambia de pestaña con JavaScript

Sin importar que nuestra página esté renderizada con PHP, o simplemente sea HTML sin preprocesamiento, tenemos que incluir una etiqueta script.

Dentro del script escribimos lo siguiente:

var tituloOriginal = document.title; // Lo guardamos para restablecerlo
window.onblur = function(){ // Si el usuario se va a otro lado...
  document.title = "Hey, vuelve aquí";// Cambiamos el título
}

window.onfocus = function(){
  document.title = tituloOriginal; // Si el usuario vuelve restablecemos el título
}

Código de ejemplo

Aquí dejo el código completo de un archivo HTML. Si quieres probar, copia y pega, guárdalo con extensión .html y ábrelo en el navegador.

<!DOCTYPE html>
<html lang="es">
<head>
 <meta charset="UTF-8">
 <title>Ejemplo de cambio de título</title>
 <script>
  var tituloOriginal = document.title; // Lo guardamos para restablecerlo más tarde
  window.onblur = function(){ // Si el usuario se va a otro lado...
    document.title = "Hey, vuelve aquí";// Cambiamos el título
  }

  window.onfocus = function(){
    document.title = tituloOriginal; // Si el usuario vuelve restablecemos el título
  }
 </script>
</head>
<body>
 <h1>Si te vas a otra pestaña, el título cambia</h1>
 <a href="https://parzibyte.me/blog">parzibyte.me/blog</a>
 <p>
  Lorem ipsum dolor sit amet, consectetur adipisicing elit. Odio nihil facilis natus earum repellat libero saepe, quasi amet cupiditate tenetur molestias error pariatur, quisquam velit odit suscipit quos accusantium et.
 </p>
</body>
</html>

Listo, con ese pequeño código de JavaScript podemos alcanzar ese resultado de una manera muy fácil y rápida.

Imágenes del comportamiento

Cuando estamos dentro de la página, se ve así (dice Ejemplo de cambio de título):

Cambiar título de página cuando el usuario cambia de pestaña – Mientras se está en la pestaña

Pero cuando navego a otra pestaña o cambio de aplicación, se ve así (dice Hey, vuelve aquí):

Cambiar título de página cuando el usuario cambia de pestaña – Cuando se cambia a otra pestaña

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

Desplegar PWA creada con Vue 3, Vite y SQLite3 en Apache

Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…

3 días hace

Arquitectura para wasm con Go, Vue 3, Pinia y Vite

En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…

3 días hace

Vue 3 y Vite: crear PWA (Progressive Web App)

En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…

3 días hace

Errores de Comlink y algunas soluciones

Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…

3 días hace

Esperar promesa para inicializar Store de Pinia con Vue 3

En este artículo te voy a enseñar cómo usar un "top level await" esperando a…

3 días hace

Solución: Apache – Server unable to read htaccess file

Ayer estaba editando unos archivos que son servidos con el servidor Apache y al visitarlos…

4 días hace

Esta web usa cookies.