Elevator.js nació como una broma sobre un momento incómodo muy conocido. La página del proyecto de Tim Holman preguntaba qué ocurre cuando un lector desplaza una página larga hasta el final —«Vaya, todo este desplazamiento... Va a tardar siglos en volver arriba»— y señalaba que, aunque los botones de «volver arriba» son funcionales, se saltan directamente ese momento. Su respuesta: llamar ascensores a los botones de volver arriba y hacer que se comporten como ascensores.

La biblioteca mantiene la promesa pequeña y técnica. Es autónoma —sin jQuery— y solo se ocupa del audio y del desplazamiento: el desarrollador le indica un archivo de audio principal y un archivo de audio final, y al hacer clic en el botón se inicia la música de ascensor, se desplaza suavemente hasta la parte superior y se reproduce un ding de cierre. Las opciones abarcan un elemento de destino personalizado, una duración fija, relleno vertical y callbacks, y el código tiene licencia MIT en GitHub y en NPM, con el audio de demostración licenciado por Pond5.

El truco es que la página del proyecto sirve a la vez como demostración. El visitante se desplaza hacia abajo por un texto que narra la incomodidad y luego hace clic en el botón del ascensor y sube en él: la broma se experimenta en lugar de describirse. Cuando la página llegó a Hacker News el 21 de abril de 2015, los comentaristas dijeron que les había hecho reír, intercambiaron impresiones sobre la música y la reproducción automática, y propusieron añadidos como saltarse el piso 13.

Tratar el propio momento utilitario como el producto: convertir el regreso arriba en un viaje en ascensor que sea a la vez funcional y divertido

La función se mantiene intacta: sigue desplazándose hasta la parte superior, y la biblioteca es autónoma y fácil de integrar, así que el teatro nunca sacrifica la utilidad que decora.

La experiencia se vende sola: el lector que hace clic en el ascensor vive la broma en primera persona, y por eso los comentaristas dijeron que les había hecho reír y que no veían la hora de usarlo.

Un código MIT pequeño y un paquete en NPM redujeron el coste de probarlo, y dejar el estilo y el audio en manos de quien lo integra permitió que cada sitio hiciera suyo el trayecto.

El momento era universal: toda página larga tiene esa subida aburrida de vuelta, así que una solución que la hacía divertida tenía público allí donde apareciera.

Cuando una acción rutinaria se siente como tiempo muerto, añade un poco de teatro: el deleite que mantiene intacta la función convierte una tarea en un momento que la gente comparte

El hilo de Hacker News del 21 de abril de 2015 reunió 438 puntos y 66 comentarios, la mayoría de ellos justamente la gracia de la broma: quienes tenían los altavoces silenciados descubrieron la música solo después de leer el hilo, algunos sugirieron añadir pistas o saltarse el piso 13, y uno señaló que la melodía podía seguir sonando si se dejaba la pestaña inactiva. El proyecto siguió siendo un pequeño artefacto de código abierto —la página y el repositorio seguían activos en septiembre de 2026— y Elevator.js se convirtió en un ejemplo citado con frecuencia de cómo añadir deleite a una interacción utilitaria, más que en un negocio.

CONSULTA LAS PRUEBAS

Las fuentes

  1. Elevator.js - Hacker News Hacker News · news.ycombinator.com ·
  2. Elevator.js Tim Holman (tholman.com) · tholman.com
  3. tholman/elevator.js - finally, a 'back to top' button that behaves like a real elevator GitHub · github.com