Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/06/2012, 03:11
JustinKO
 
Fecha de Ingreso: junio-2012
Ubicación: Madrid
Mensajes: 339
Antigüedad: 12 años, 7 meses
Puntos: 47
Pregunta ejecutar secuencialmente el script

Lo primero saludaros a todos ya que acabo de registrarme en este foro y daros las gracias por todo lo que hasta ahora me habéis ayudado, ya aunque soy nuevo aquí, muchas veces me llevaban mis busquedas a encontrar la solución en vuestra comunidad.

Por otro lado decir que soy nuevo en el diseño web, estoy empezando con ello de freelance, y no tengo a quién recurrir en caso de duda, por lo que os ha tocado ;)

Dicho esto voy a hacer una pregunta con la que me temo que vais a pensar que no he buscado lo suficiente, pero de verdad, llevo con este problema muchos meses, buscado soluciones "chapuzas" y sin encontrar "LA SOLUCIÓN" que seguro estoy de que debe de haber.

Es tan simple como lo siguiente.

Un código como éste:

Código:
    $('a').click(function(event) {
                   event.preventDefault();

                   if($('body').attr('id')=="home"){
                                    $('#dial').animate({ backgroundPosition: posicionar_dial$ },500,function(){   // mueve el fondo de un objeto a la posición de una variable.
                                                                                                               
                                                        $('#ficha_intro').ordenarHome();});    // ejecuta la función ordenarHome() que he creado.
                                   
                                      window.location = direccion_location$;       //realiza el window.location a la variable direccion_location$
    };

     });
   
};
La cuestión es que la función ordenar_home() realiza varios cambios en la página y lo único que quiero es que el window.location se ejecute solo cuando esa función, y todos los cambios que realiza, hayan terminado.

Hasta ahora en este problema me he podido apañar con callbacks; poniendo delay() antes de los métodos (aquí no sé cómo ponerselo); he visto por ahí lo de queue() pero que no consigo hacerlo funcionar.

¿me podríais decir, o enviarme un link donde lo expliquen, sobre cuál es esa manera simple, fácil y lógica que seguro debe de existir y que no soy capaz de encontrar, ?


Mucísimas gracias de antemano, y disculpad mis posibles errores al expresarme ya que soy novato en esto de la programación y todavía no me conozco los términos técnicos.

Saludos