Hola
Deiv:
Gracias por los elogios, todos los usuarios estamos aquí para proponer y resolver problemas y enseñar a resolverlos poco a poco
Si tienes muchos scripts en tu página, lo más normal es que haya conflictos cuando seteamos el
window.onload. Muchos scripts hacen cosas en el evento de carga del documento y si lo ponemos tal y como lo tenemos hasta ahora estamos sobreescribiendo lo que otros scripts podrían haber hecho.
Para ello existe la solución de mirar si
window.onload ya había sido fijado, mediante la famosa addLoadEvent():
Código PHP:
function addLoadEvent(func) {
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
window.onload = function() {
if (oldonload) {
oldonload();
}
func();
}
}
}
//maneras de uso:
addLoadEvent(nameOfSomeFunctionToRunOnPageLoad);
addLoadEvent(function() {
/* more code to run on page load */
});
Si aún así tuvieramos problemas, deberíamos hacer una función autoejecutable y anónima para que todas nuestras variables globales (como
cambiando y nuestras propias funciones) pasen a ser variables locales. Puedes echar un vistazo a estas fuente:
Funciones anónimas y autoejecutables en javascript
Si, después de lo del cambio del
window.onload y de hacer todo el código una función anónima y autoejecutable, no te funcionara correctamente, sería cuestión de ir revisando paso por paso lo que falla, habría que meterse con ese problema secundario.
Un saludo