El JavaScript del LMS: lms-scripts.js
Ya configuraste los colores del sitio. Ahora vamos a conocer el archivo que le da vida y movimiento al LMS. No te preocupes si nunca escribiste JavaScript — en esta lección solo vas a entender lo que hace el archivo, no escribirlo desde cero.
¿Dónde está el archivo?
wp-content/themes/divi-lms-child/assets/js/lms-scripts.js
La estructura del archivo de un vistazo
El archivo está organizado en 4 bloques muy claros. Cada uno hace una sola cosa:
Función 1 explicada: el botón «Volver arriba»
Cuando un estudiante lee una lección larga y llega al final, necesita volver al principio. En vez de scrollear todo de vuelta, el botón flotante lo sube de un clic.
Vista previa — Cómo se ve el botón en la página:
… contenido de la lección …
… el estudiante scrolleó más de 300px hacia abajo …
El botón usa el color --color-primary que configuraste en variables.css
📄 Ver el código de iniciarBotonArriba() — Hacé clic para expandir
Función 2 explicada: la barra de progreso animada
LearnPress ya tiene barras de progreso, pero aparecen de golpe. Esta función las hace arrancar desde cero y crecer suavemente hasta el porcentaje real.
Vista previa — Comparación:
Progreso del curso:
Aparece directo al 75% — sin transición
Progreso del curso:
Crece desde 0% hasta 75% suavemente
Función 3 explicada: el botón que cambia de color
Cuando el estudiante hace clic en «Completar lección», el botón se vuelve verde para dar una señal visual de éxito. Esto lo hace añadiendo la clase CSS lms-completado que ya definimos en lms-styles.css.
Vista previa — Efecto al completar:
Antes del clic
Después del clic (500ms después)
La consola del navegador: tu herramienta de diagnóstico
La consola del navegador es la herramienta que te dice si el JavaScript se cargó bien o si hay errores. Aprendé a usarla — te va a salvar la vida muchas veces.
| Cómo abrir la consola | Qué presionar |
|---|---|
| Atajo de teclado | F12 → hacé clic en la pestaña Console |
| Menú del navegador | Botón derecho en la página → Inspeccionar → pestaña Console |
| Atajo alternativo | Ctrl + Shift + J (abre directo en Console) |
👁️ Así se ve la consola cuando todo funciona correctamente:
JQMIGRATE: Migrate is installed… — Este mensaje es normal en WordPress. Significa que jQuery está cargado. No es un error.
✓ Divi LMS Child: scripts cargados correctamente — ¡Este es el nuestro! Aparece en azul porque le pusimos ese color en el código. Si ves este mensaje, el archivo JS se cargó perfectamente.
¿Por qué el archivo se carga en el footer?
En functions.php, el script se carga con el parámetro true al final. Eso significa «cargalo en el footer, no en el head».
🎉 ¡Lo lograste! Resumen de la lección
- Sabés que
lms-scripts.jstiene 3 funciones: botón arriba, barra de progreso animada, efecto al completar lección - Entendés que el archivo se carga en el footer para que el HTML esté listo antes de ejecutarse
- Aprendiste a abrir la consola del navegador con F12
- Sabés identificar si el script cargó bien: buscás el mensaje azul «✓ Divi LMS Child: scripts cargados correctamente»
- Entendés la diferencia entre un mensaje normal (blanco/negro) y un error (rojo)
1. Abrí tu sitio en el navegador
2. Presioná F12 para abrir DevTools
3. Hacé clic en la pestaña Console
4. Recargá la página con Ctrl + F5
5. Buscá el mensaje azul: ✓ Divi LMS Child: scripts cargados correctamente
6. Confirmá que no hay mensajes en rojo
Si ves el mensaje azul y no hay errores rojos — ¡la lección está completada!