Wenn javascript-Funktionen ausgeführt

Ich denke, es ist eine einfache Frage, aber ich habe die Suche rund um und habe nicht die Antwort gefunden überall.

Den denke ist, dass ich eine html-Seite mit einigen Skripten (in den Körper) wie folgt ein:

<script type="text/javascript">grf();</script>

Den grf () - Funktion definiert ist, in eine externe .js-Datei.
Die Frage ist: wird diese Funktion ausgeführt, sobald der browser geladen wurde, die Seite UND alle externen js-Dateien? Oder kann es sein, dass die Funktion ausgeführt wird, bevor die .js-Dateien werden geladen? Und wenn ja, wie kann ich dies verhindern?

  • Vielen Dank für die Beantwortung der ersten Frage, bei der die Funktionen ausgeführt werden. Für die zweite Frage, es scheint, die meisten von Ihnen einig, dass die beste option ist die Verwendung von jQuery. Aber ich Frage mich, ob es möglich ist, zu wissen, ob eine Funktion definiert ist (geladen) oder nicht. Zum Beispiel kann ich so etwas wie dies tun, um sicherzustellen, dass ein elem geladen wurde: function ff() { if (!Dokument.getElementById('elem')) setTimeout('ff()', 250); // von hier Aus kann ich verwenden 'elem' } Aber gibt es eine Möglichkeit zu wissen, ob eine Funktion definiert ist?
  • test mit: if (typeof(functionName) != 'undefined') { // Funktion }
  • Wenn nicht alle libs, und Sie wollen, um code auszuführen, verwendet der DOM, der zuverlässigste Weg ist, um Ihre Skript-Tags nach dem body-tag schließen, statt der polling-Mechanismus, die Sie verwenden.
InformationsquelleAutor Victor | 2009-10-03
Schreibe einen Kommentar