Quiero ejecutar una función cuando se cargue la página, pero no quiero usarla en la etiqueta <body>
.
Tengo un script que se ejecuta si lo inicializo en el <body>
, así:
function codeAddress() {
// code
}
<body onLoad="codeAddress()">
Pero quiero ejecutarlo sin el <body onload="codeAddress()">
y he probado muchas cosas, por ejemplo esto:
window.onload = codeAddress;
Pero no funciona.
Entonces, ¿cómo lo ejecuto cuando se carga la página?
window.onload = codeAddress;
debería funcionar - [aquí's una demo](
-- begin snippet: js hide: false -->
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
function codeAddress() {
alert('ok');
}
window.onload = codeAddress;
</script>
</head>
<body>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
function codeAddress() {
alert('ok');
}
</script>
</head>
<body onload="codeAddress();">
</body>
</html>
Echa un vistazo al domReady script que permite la configuración de múltiples funciones para ejecutar cuando el DOM se ha cargado. Es básicamente lo que hace el Dom ready en muchas librerías JavaScript populares, pero es ligero y puede ser tomado y añadido al inicio de su archivo de script externo.
Ejemplo de uso
// add reference to domReady script or place
// contents of script before here
function codeAddress() {
}
domReady(codeAddress);