Einer der häufigsten Fehler, mit denen jQuery-Entwickler konfrontiert werden, ist der „$ ist nicht definiert“-Fehler. Auf den ersten Blick mag es ein kleiner Fehler sein, aber in Anbetracht der Tatsache, dass mehr als 70 Prozent der Websites jQuery in irgendeiner Form verwenden, kann dies zu einem riesigen Durcheinander führen.
Der Grund für diesen Fehler:
Dieser Fehler tritt grundsätzlich auf, wenn der Entwickler eine Variable verwendet, bevor er sie im Skript deklariert hat.
Beispiel:
num;
declaration
var
num;
data;
Ausgabe:
Im obigen Beispiel sehen wir, dass ’num‘ aufgerufen wurde, bevor es deklariert wurde. Deshalb wurde in der ersten Zeile der ReferenceError: num is not defined geworfen. In der dritten Zeile wird ’num‘ erneut aufgerufen. Diesmal wird jedoch kein Fehler ausgelöst, da die Variable bereits in der zweiten Zeile des Skripts definiert wurde.
Dies ist ein sehr häufiger Fehler. Am besten vermeiden Sie ihn, indem Sie alle Variablen und Funktionen vor dem Aufruf hochziehen. Schauen Sie sich ein weiteres Beispiel an.
Beispiel:
process();
process =
function
(){
var
a = 2;
console.log(a);
}
process();
Ausgabe:
Die häufigsten Gründe für diesen Fehler:
- Das Einbetten eines jQuery-Plugins vor der jQuery-Skriptdatei
‚ Ein Plugin ist im Grunde ein vorher geschriebener Code-Chunk. Diese Chunks verwenden vordefinierte jQuery-Funktionen und -Methoden. Daher ist es notwendig, die jQuery-Skriptdatei vor der Plugin-Datei einzubetten. Andernfalls wird die Anwendung die jQuery-Codierung nicht verstehen.
Korrekte Reihenfolge:
<script src=
"/lib/jquery.min.js"
></script>
<script src=
"/lib/jquery.plugin.js"
></script>
- Problem mit CDN gehostetem jQuery:
Es ist möglich, dass die im CDN gehostete jQuery-Version, die für die Website verwendet wird, auf der Verbindung des Kunden blockiert wurde. Diese Art von Problem wird im Allgemeinen bei IP-Adressen beobachtet, die aus Ländern wie China, Indonesien, Korea usw. stammen.
Um dieses Problem zu vermeiden, ist es besser, eine lokal gehostete Fallback-Version von jQuery bereitzustellen.
Beispiel:
<script src=
</script>
<script>
window.jQuery || document.write(
'
<script src="http://www.mywebsite.com/jquery.min.js"><\/script>'
))
</script>
wird verwendet, um eine beliebige Variable in jQuery zu deklarieren. A plug-in is basically a code chunk written beforehand. These chunks use predefined jQuery functions and methods. Therefore, it is necessary to embed the jQuery script file before the plugin file. Otherwise, the application won’t understand the jQuery coding.
Correct Order:
<script src=
"/lib/jquery.min.js"
></script>
<script src=
"/lib/jquery.plugin.js"
></script>
- CDN hosted jQuery problem:
It is possible that the CDN hosted jQuery version, used for the website, might have been blocked on the customer’s connection. This type of issue is generally observed on IP addresses originating from countries like China, Indonesia, Korea, etc.
To avoid this issue, it is better to provide a locally-hosted fallback version of jQuery.
Example:
<script src=
</script>
<script>
window.jQuery || document.write(
'
<script src="http://www.mywebsite.com/jquery.min.js"><\/script>'
))
</script>