• User

    [javascript] Attesa caricamento dello script

    C'è un modo per eseguire una funzione soltanto dopo che tutti gli script precedenti siano caricati?
    Nel mio esempio pratico ho una funzione che parsa uno xml e un'altra che richiama i dati estratti, ma quando la seconda parte i dati non sono stati ancora caricati e mi da errore...
    La prima è in un js, mentre la seconda è nell'html.
    Ho provato ha eludere il problema dando un setTimeout, ma i tempi variano a seconda della connessione e del pc....
    Soluzioni?


  • User

    Ragionandoci sopra (cosa che non faccio spesso evidentemente) ho risolto.

    Per chi avesse lo stesso problema posto la soluzione che ho trovato.

    [html]
    function controlla(){
    if (a==5){
    alert('ciao');
    }
    else setTimeout('controlla();',300);
    }
    a=0;
    setTimeout('a=5;',5000);
    controlla();

    [/html]

    In questo caso questa funzione da un alert solo dopo che a =5.

    è settata correttamente, in quel caso passa alla funzione successiva...

    [html]
    function controlla(){
    if (a[x]!=''){
    Prossima_funzione();
    }
    else setTimeout('controlla();',300);
    }

    [/html]

    Funziona correttamente in firefox, opera e ie...
    Se avete metodi più "umani" ben vengano!

    Ciaps!