Uncaught ReferenceError: $ nicht definiert ist?
Wie kommt dieser code löst eine
Uncaught ReferenceError: $ is nicht definiert
wenn es OK war, bevor?
$(document).ready(function() {
$('#tabs > ul').tabs({ fx: { opacity: 'toggle' } });
$('#featuredvid > ul').tabs();
});
Ergebnisse in tabs-schließen Sie nicht mehr.
jQuery wird in der Kopfzeile:
<script language="JavaScript" type="text/javascript" src="<?php echo get_option('siteurl') ?>/js/sprinkle.js"></script>
<script language="JavaScript" type="text/javascript" src="<?php echo get_option('siteurl') ?>/js/jquery-1.2.6.min.js"></script>
<script language="JavaScript" type="text/javascript" src="<?php echo get_option('siteurl') ?>/js/jquery-ui-personalized-1.5.2.packed.js"></script>
<script language="JavaScript" type="text/javascript" src="<?php echo get_option('siteurl') ?>/js/jquery-1.2.6.min.js"></script> Nehmen Sie diese auf der Oberseite
Vielleicht irgendwann Aufruf der ready-Funktion vor dem JQuery geladen dann dieser Fehler tritt möglicherweise auf,
Vielleicht irgendwann Aufruf der ready-Funktion vor dem JQuery geladen dann dieser Fehler tritt möglicherweise auf,
InformationsquelleAutor Olivers | 2010-01-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie die Verweise auf die jquery-Skripte ersten.
2 Jahre später, noch immer die Antwort ist nicht "angekreuzt" ) Dieser Artikel beschreibt diese und 4 weitere gemeinsame Fälle, wenn dieser Fehler Auftritt.
Dass es gelöst für mich. Der Pfad zu dem Skript war falsch in ein von meinem
HTML
- Dateien.vielen Dank. Auch legte es vor eine partielle view(mvc), so dass es verfügbar ist für jedes script, in dem teilweise.
diese Lösung funktioniert nicht
InformationsquelleAutor Jeremy
Sie sind dem Aufruf der ready-Funktion, bevor die jQuery-JavaScript enthalten ist. Referenz jQuery ersten.
Tatsächlich, dies ist die richtige Antwort. Sie brauchen nichts anderes um das Problem zu lösen.
Vielen Dank !!! arbeitete für mich.
Yup. Das war mein problem. Hatte einfach jquery NACH Referenzierung meiner js-Datei. D ' Oh!
InformationsquelleAutor Open Source
Dies ist, was Sie gelöst für mich. Ursprünglich ging ich zu Google und kopiert und eingefügt, deren Vorschlags-snippets für jQuery auf Ihre CDN Seite:
Snippet beinhaltet nicht die
HTTP:
oderHTTPS:
imsrc
Attribut, sondern mein browser, FireFox, Bedarf es also habe ich es geändert:edit: das hat bei mir mit Google Chrome als auch
Dann es funktionierte.
Ein häufiges problem ist hier wahrscheinlich, ist, wenn die Protokoll-relative URL ' s sind in der Entwicklung, und an einem sonnigen Tag können Sie versuchen, eine Seite zu laden aus einer lokalen Datei. Ihr browser wird versuchen optimistisch zu laden
file://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js
und Sie Fragen sich, warum es nicht zeigen, bis in die Netzwerk-Konsole.danke @PieterEnnes, genau das war der Fall für mich. Vielen Dank an die Beantworter der Frage auch!
InformationsquelleAutor Marlin Mixon
Wenn das benutzerdefinierte Skript geladen ist, bevor das jQuery-plugin im browser geladen ist, dann diese Art von problem auftreten. Also, immer halten Sie Ihre eigenen JavaScript-oder jQuery-code nach dem Aufruf der jQuery-plugin, so dass die Lösung für dieses ist :
Zuerst fügen Sie den link zu der jQuery-Datei gehostet auf GoogleApis oder eine lokale jQuery-Datei, die Sie herunterladen werden von http://jquery.com/download/ und hosten auf Ihrem server:
oder ein plugin für jQuery. Dann legen Sie das benutzerdefinierte Skript-Datei, link oder code:
If your custom script is loaded before the jQuery plugin is loaded to the browser then this type of problem may occur
die perfekte Antwort.. in meinem Fall-Skript wurde in der FußzeileInformationsquelleAutor Jnanaranjan
In meinem Fall war ich, dass meine
.js
- Datei, bevor die jQuery-Skript-link, setzen die.js
Datei nach dem jQuery-Skript-link mein Problem gelöst.InformationsquelleAutor
Okay, mein problem war anders - es war Document Security Modell in Chrome.
Blick auf die Antworten hier, es war offensichtlich, dass ich irgendwie nicht laden mein jquery-Dateien, bevor Sie die
$(document).ready()
etc. Funktionen. Sie wurden jedoch alle in den richtigen Positionen.In meinem Fall war, weil ich den Zugriff auf die Inhalte über eine sichere HTTPS-Verbindung, in der Erwägung, dass die Seite versuchte zu laden CDN gehosteten Daten von google, etc. Die Lösung war, speichern Sie Sie lokal, und dann schließen Sie dann direkt und nicht über die CDN-jedes mal.
Bearbeiten: Der andere Weg dies zu tun ist, um link zu allen CDN-gehostete Material als https://anstatt http://- dann wird das Modell nicht beschweren.
yep. dieser eine ist mein problem gelöst, ich war das laden der Skripte aus einer Url wie dieser //cdnjs.cloudflare.com/ajax/libs/jquery/1.12.0/jquery.min.js. Mit cdnjs... funktioniert Super
InformationsquelleAutor Sudipta Chatterjee
Fügen Sie die Bibliothek, bevor Sie das Skript starten soll.Sie können jede der folgenden CDN, um es zu starten.
Google:
Microsoft
Jquery
Wenn Sie eine andere Jquery-cdn-version überprüfen dies link.
Nach diesem:
WordPress:
InformationsquelleAutor lalithkumar
Wenn es wordpress ist, erforderlich werden könnten, zu ändern
zu
oder fügen Sie
bevor
InformationsquelleAutor xoxn-- 1'w3k4n
Ich hatte genau das gleiche problem und keine der oben genannten Lösungen geholfen.
allerdings habe ich nur eine Verknüpfung von der
.css
Dateien nach der.js
- Dateien und das problem auf wundersame Weise verschwunden. Hoffe, das hilft."Was ist Ihr problem gelöst hat sollte nicht dein problem lösen, und Sie sollten nicht das tun, was Ihr problem gelöst."
InformationsquelleAutor crowicked
In meinem Fall hatte ich diese referenceError wie die Reihenfolge von script-Aufrufe falsch war. Löste das Problem, indem Sie die Reihenfolge:
zu
InformationsquelleAutor Yannis Dran
Ich bin proably die einzige person, die hatte meine Art von problem, aber krank put it down sowieso. Ich wollte versuchen, mein Skript asynchrone nur für den Spaß von ihm. Dann habe ich es vergessen und als ich ging live [custom].js-Datei nur geladen werden, 50% der Zeit vor dem jQuery.js.
Also änderte ich
zu
🙂
InformationsquelleAutor Sindri Þór
Wenn Sie dies tun .Net und habe die script-Datei verwiesen wird, richtig, und Sie jQuery-sieht gut aus, stellen Sie sicher, dass die Benutzer Zugriff auf die Skript-Datei. Das Projekt, an dem ich arbeitete (zu einem Kollegen) hatten Ihre web.config verweigern des Zugriffs für anonyme Benutzer. Die Seite, die ich arbeitete war zugänglich für anonyme Benutzer daher Sie nicht haben Zugriff auf die Skript-Datei. Fiel Folgendes in der web.config und alles war richtig in der Welt:
InformationsquelleAutor peroija
Die Quelldatei
jquery-1.2.6.min.js
ist nicht als jQuery-Befehl$()
ausgeführt wird früher als<..src='jquery-1.2.6.min.js'>
.Bitte führen Sie
<.. src="/js/jquery-1.2.6.min.js..">
auf den ersten, und stellen Sie sicher, dass die src-Pfad richtig ist, dann führen Sie das jquery-BefehlInformationsquelleAutor charles hsu
Passiert mir das vor.
Der Grund war, dass ich die Verbindung android zu einem webview mit JS. Und ich schickte ein parameter ohne Anführungszeichen.
und wenn ich es geändert
funktionierte es.
Ich hatte ein problem in Freemarker und der Grund war die Abwesenheit von einfachen Anführungszeichen, also der Wert wurde nicht behandelt wie ein string, sondern als variable
InformationsquelleAutor Reinherd
In meinem Fall war es ein Tippfehler, ich habe vergessen, einen umgekehrten Schrägstrich und war die Referenzierung der Quelle falsch.
Bevor
src="/scripts/jquery.js"
Nachdem
src="scripts/jquery.js"
InformationsquelleAutor Dennis
Ihre JavaScript-Datei fehlt, so dass dieser Fehler aufgetreten ist. Fügen Sie einfach die JavaScript-Datei innerhalb der
<head>
tag. Siehe Beispiel:oder fügen Sie den folgenden code in den tag :
InformationsquelleAutor Gaurav Gupta
Der Fehler auftreten, wird in den folgenden zwei Szenarien als gut.
Also 3 Dinge zu beachten - check erforderlich-Skripte Hinzugefügt werden, überprüfen Sie, wenn Sie Hinzugefügt werden, in der erforderlichen Reihenfolge und Dritte syntax-Fehler in Ihren Java-Script.
Bis Stimmen Sie für Ihren ASP.NET MVC @section, scripts Zeiger
InformationsquelleAutor Sankar Krishnamoorthy
Ich hatte das gleiche problem , und ich gelöst, indem jQuery-an der Spitze aller javascript-codes habe ich in meinem code.
Etwas wie dieses:
Hoffe, kann helfen, jemand in der Zukunft.
InformationsquelleAutor user9964622
Doh! Ich hatte gemischte Zitate in meine tags, die die jquery-Referenz zu brechen. Macht ein überprüfen in Chrome die mir erlaubt zu sehen, dass die Datei war nicht richtig verknüpft.
InformationsquelleAutor justreed
In meinem Fall habe ich vergessen zu zählen :
Früher war ich darunter nur jquery-mobile, die verursacht diesen Fehler.
InformationsquelleAutor Anand
Ok, ich gebe zu, das war eine wirklich dumme Sache, die passiert ist, einmal zu mir. Ich veränderte die script-tag-zu-Punkt, um die richtigen Inhalte und änderte das Skript, um die richtigen sein, im editor ... aber Total vergessen, um die änderung zu speichern ;( Sie könnte lachen Sie jetzt, aber wenn du müde bist, alle seltsamen Probleme können passieren. Ich
InformationsquelleAutor Hexodus
Sie sind dem Aufruf der
ready()
Funktion, bevor die jQuery-JavaScript enthalten ist. Referenz jQuery ersten.Wenn Sie in ASP.NET MVC können Sie angeben, Wann Ihre JS-code dargestellt werden soll, dies zu tun:
1, In Ihrem
page.cshtml
wickeln Sie Ihre<script>
tag in einen Abschnitt, und geben Sie einen Namen ein, der gebräuchliche name zu verwenden ist 'Skripte':2, In Ihrem
_Layout.cshtml
Seite hinzufügen@RenderSection("Scripts", required: false)
, stellen Sie sicher, um es nach auf den Sie verweisen, den Jquery source, das wird deine JS-code Rendern später als die Jquery.InformationsquelleAutor Mayer Spitzer
Ich hatte ein ähnliches Problem und es war, weil ich fehlt eine schließende > auf ein Stylesheet link.
InformationsquelleAutor jason
Ich habe ähnliches Problem, und wissen Sie was, es ist, weil der Netzwerk getrennt ist, wenn ich testen in android-Gerät webview und ich merken es nicht, und die lokalen js kein problem, zu laden, weil Sie nicht brauchen, Netzwerk. Es scheint lächerlich, aber Sie verschwenden meine ~1 Stunde, um herauszufinden, es.
InformationsquelleAutor 林果皞
Seltsam genug, mein problem kam von PHP.
Einen REST-API-Aufruf war ein Fehlschlag, und es war zu brechen das laden der Bibliotheken danach. Seit dem scheitern wurde vom REST rufen, es war nicht, dass Sie mir einen php kompilieren Fehler.
Halten dies als eine option auch, wenn das laden von jquery scheint ok.
InformationsquelleAutor Aris
Hatte ich dieses Problem, wenn ich war surfen durch das internet über mein Handy-hotspot. es war auch das komprimieren von Bildern und das Hinzugefügt Sie das folgende Skript an der Unterseite des body-Tags
Wenn ich die Verbindung zum richtigen wifi-Verbindung, alles scheint zu funktionieren für mich. Hoffe, dies hilft jemand.
InformationsquelleAutor bubb
Hatte ich ähnliches Problem. Meinem test-server funktioniert wurde mit "http". Allerdings scheiterte es in der Produktion, die hatte SSL.
Somit in der Produktion, ich fügte hinzu, "HTPPS" statt "HTTP" und in test habe ich gehalten, wie es ist "HTTP".
Test:
wp_register_script( 'jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js', array(), null, false );
wp_register_script( 'custom-script', plugins_url( '/js/custom.js', DATEI ), array( 'jquery' ) );
Produktion:
wp_register_script( 'jquery', 'https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js', array(), null, false );
wp_register_script( 'custom-script', plugins_url( '/js/custom.js', DATEI ), array( 'jquery' ) );
Hoffe, dies hilft jemand, der arbeitet auf wordpress.
InformationsquelleAutor user3671115
Kann dies auch passieren, wenn es ein Netzwerkproblem ist. Das bedeutet, dass, obwohl die "jquery-Skripte" sind, und enthalten sind, vor der Verwendung, da die jquery-Scripte nicht zugänglich sind, zum Zeitpunkt des Ladens der Seite, damit die Definitionen auf den "$" behandelt werden als "undefined references".
FÜR TEST/DEBUG-ZWECKEN :: können Sie versuchen, Zugriff auf die "jquery-Skript" url im browser. Wenn es zugänglich ist, Ihrer Seite sollte ordnungsgemäß geladen werden, sonst zeigt es die besagten Fehler (oder anderen entsprechenden script-Fehler). Beispiel - http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js zugänglich sein sollte, auf den browser (oder browser-Kontext-Haltungen).
Ich hatte ähnliches problem, bei dem ich in der Lage, laden Sie die html-Seite (mit Skripten) in meinem windows-host-browser, aber nicht imstande war, die Last in der vm-ubuntu. Die Lösung der Netzwerk-Problem, habe das Problem gelöst.
InformationsquelleAutor parasrish
Dies ist eine Lösung für
WordPress
sollten Sie erwähnen, dass.Sie meinen Tag gerettet. Zu kämpfen hatte, es zu tun in WordPress und keiner, aber diese Lösung funktionierte wie ein Charme.
InformationsquelleAutor Jayanit Satani
Root-problem ist ein
ReferenceError
. MDN gibt , dass eintry
/catch
block ist das richtige Werkzeug für den job. In meinem Fall war ich immer nicht erfasste Referenz-Fehler bei einer Zahlung sdk/Bibliothek. Die folgenden arbeiten für mich.Offensichtlich das Update zu laden, was auch immer SDK/Bibliothek, wie z.B. jQuery, die vor Aufruf seiner Methoden, aber die
try
/catch
hält Ihre freigegebenen JavaScript von barfing Fehler in Fall, dass Sie ausführen, dass das gemeinsame Skript auf einer Seite, die nicht geladen werden kann, was die Bibliothek, die Sie verwenden, die auf einer Teilmenge der Seiten.InformationsquelleAutor Ron Royston