Wenn auf einer Seite zwei JavaScript-Funktionen vorhanden sind, die aufgerufen werden müssen, wenn das Laden des Dokuments abgeschlossen ist. Ist es möglich, dass eine Funktion zuerst ausgeführt werden kann, oder ist es die erste Funktion, die immer zuerst ausgeführt wird?

Wenn Sie also jQuery verwenden, haben Sie folgenden Code:

$(document).ready(function(){ function1(); });

$(document).ready(function(){ function2(); });

Kann es vorkommen, dass function2 zuerst ausgeführt wird oder wird function1 immer zuerst ausgeführt?

3
Toseef Zafar 9 Okt. 2012 im 13:48

3 Antworten

Beste Antwort

JQuery ready verwendet das System für verzögerte Objekte:

ready: function( fn ) {
    // Add the callback
    jQuery.ready.promise().done( fn );

    return this;
},

(aus dem Quellcode)

In der Dokumentation heißt es

Rückrufe werden in der Reihenfolge ausgeführt, in der sie hinzugefügt wurden

Ja, Ihre Rückrufe werden in der Reihenfolge ihrer Hinzufügung ausgeführt.

7
Denys Séguret 9 Okt. 2012 im 09:57

Verwenden Sie besser die Rückruffunktion, um die Ausführungsreihenfolge der Funktionen zu überprüfen

0
prady00 9 Okt. 2012 im 09:52

Wenn Sie möchten, dass diese Funktionen der Reihe nach ausgeführt werden, schreiben Sie einfach:

$(document).ready(function(){ 
    function1();
    function2();
});
3
Sebastian Breit 9 Okt. 2012 im 09:56