Colocando el código JavaScript al final del cuerpo del documento, se aplicarán correctamente todas las instrucciones/métodos/funciones que hayas escrito para cada uno de los elementos del DOM. Dicho de otro modo, la carga del documento se realiza de arriba hacia abajo, por lo que si primero carga el código JavaScript y luego los elementos del documento, no se aplicarán en estos últimos.
Como te explica
PHPeros, colocando la línea
$(document).ready(), puedes colocar el código JavaScript en la cabecera del documento, pues dicho método aplica las instrucciones que indiquemos en él cuando todos los elementos del documento hayan cargado.
Por ejemplo, el código que muestras, lo aplicarías así:
Código Javascript
:
Ver original$(document).ready(function(){
$('dl dd').hide();
$('dl dt').click(function(){
if ($(this).hasClass('activo')) {
$(this).removeClass('activo');
$(this).next().slideUp();
} else {
$('dl dt').removeClass('activo');
$(this).addClass('activo');
$('dl dd').slideUp();
$(this).next().slideDown();
}
});
});
Puedes leer más al respecto desde el manual oficial de jQuery:
.ready()
Saludos