2016-12-05 2 views
-2

ich hinzufügen async="async" Attribut meines Script-Code, wie Sie auf dem Bild zu sehenJavascript asynchrone Fehler

zum Beispiel:

<script async="async" type="text/javascript" src="js/jquery.min.js"></script> 
<script async="async" type="text/javascript" src="js/bootstrap.min.js"></script> 
<script async="async" type="text/javascript" src="js/plugin.js"></script> 
<script async="async" type="text/javascript" src="js/main.js"></script> 

enter image description here

und nach hinzugefügt javascript errors notifier Plugin gab mir diesen Fehler

enter image description here

und meine Fehlerzeile Code

enter image description here

$(function() { 
$(".lazy").lazy(); 
}); 

, wie kann ich es beheben jetzt

+1

haben Sie versucht, dieses ? – GraveyardQueen

+4

mit 'async' werden Ihre Skripts jetzt in zufälliger Reihenfolge geladen. Ihr Skript versucht eine Funktion auszuführen, die noch nicht geladen ist. so ** entfernen async ** zurück und genießen Sie – ixpl0

+2

Lektion: Verwenden Sie keine Funktionen, die Sie nicht vollständig verstehen –

Antwort

2
  1. Verwenden defer das Laden des Skripte zu verschieben.
  2. Verwenden Sie nicht async="async": es bedeutet, Sie sind in Ordnung mit dem Laden und Ausführen zu einem späteren Zeitpunkt. Die kleineren Skripte werden zuerst geladen und ausgeführt.
  3. Sie müssen type="text/javascript" nicht verwenden. JavaScript hat gewonnen.

So Ihr Code wird:

<script src="js/jquery.min.js" defer></script> 
<script src="js/bootstrap.min.js" defer></script> 
<script src="js/plugin.js" defer></script> 
<script src="js/main.js" defer></script> 

Dieses Ihr Problem lösen sollte.


Siehe MDN: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script

Async

dieses Boolesche Attribut gesetzt, um anzuzeigen, dass der Browser soll, , wenn möglich, das Skript ausführen asynchron. Sie hat keine Auswirkung auf Inline-Scripts

aufschieben zu einem Browser

Dieses Boolesche Attribut gesetzt, um anzuzeigen (dh Skripte, die das Attribut src nicht haben), dass das Skript nach dem werden soll ausgeführt Dokument wurde analysiert, aber bevor DOMContentLoaded ausgelöst wurde. Das Defer-Attribut sollte nicht für Skripts verwendet werden, die nicht über das src-Attribut verfügen.

+0

danke, aber jetzt Bilder nicht erscheint Ich denke, jquery Lazy-Funktion funktioniert nicht –

+0

Ich denke, das ist eine andere Frage: Warum funktioniert nicht faul?Ich würde vorschlagen, eine halbe Stunde zu nehmen und auf faul auf jquery-Website zu lesen und einige Beispiele zu betrachten. Ich bin sicher, du wirst es verstehen. –

+0

vielen Dank und ich habe eine andere Frage gibt es eine Kontrollanweisung in js, um es zu kontrollieren? Ich meine, wenn geladen dies tun .. –