función de anulación, prioridad de carga

Estoy desarrollando una biblioteca y creé este código con errores:

//-------------------
Gmaps = {};
Gmaps.map = new Gmaps4RailsGoogle(); //there exists a default callback function in the created object
function load_map() {
  Gmaps.map.callback();
};
window.onload = load_map();
//--------------------
Gmaps.map.callback = function(){ alert('ok'); }

Pensé que, debido a que toda la página está cargada, callback habría sido cambiado y alert mensaje mostrado.

Pero no es el caso y no tengo ningún mensaje de error en firebug.

Si luego ejecuto Gmaps.map.callback() en consola, funciona bien.

¿Hay alguna razón por la que el callback no se anula?

En aras del contexto, codifique entre --------- es creado por la biblioteca, pero los desarrolladores podrían anular algunas funciones en su html.

preguntado el 27 de agosto de 11 a las 18:08

1 Respuestas

No estas ejecutando load_map onload. Lo estás ejecutando inmediatamente aquí:

window.onload = load_map();

y almacenando su valor de retorno dentro window.onload, por lo que no pasa nada en la carga. Simplemente cambie esa línea a:

window.onload = load_map;

Respondido 27 ago 11, 23:08

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.