¿Hay alguna forma de detectar si una ventana del navegador no está activa actualmente?

Tengo JavaScript que está haciendo actividad periódicamente. Cuando el usuario no está mirando el sitio (es decir, la ventana o la pestaña no tiene el foco), sería bueno no ejecutarlo.

¿Hay alguna manera de hacer esto usando JavaScript?

Mi punto de referencia: Gmail Chat reproduce un sonido si la ventana que está utilizando no está activa.

Respuestas a la pregunta(18)

Su respuesta a la pregunta