Ich versuche, Bootstrap zu verwenden, um eine Schnittstelle für ein Programm zu erstellen. Ich habe jQuery 1.11.0 zum <head>
Tag hinzugefügt und dachte, das wäre das, aber wenn ich die Webseite in einem Browser starte, meldet jQuery einen Fehler:
Uncaught Error: Bootstrap's JavaScript requires jQuery
Ich habe versucht, jQuery 1.9.0 zu verwenden. Ich habe versucht, Kopien auf mehreren CDNs zu verwenden, aber ich kann es nicht zum Laufen bringen. Kann jemand darauf hinweisen, was ich falsch mache?
jquery
html
css
twitter-bootstrap
twitter-bootstrap-3
Munim Munna
quelle
quelle
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.0/jquery.min.js" integrity="sha256-xNzN2a4ltkB44Mc/Jz3pT4iU1cmeR0FkXs4pru/JxaQ=" crossorigin="anonymous"></script>
vor dem Bootstrap-Importskript hinzu. Kopieren Sie das neueste CDN hier: cdnjs.com/libraries/jqueryAntworten:
Versuche dies
Ändern Sie die Reihenfolge der Dateien wie folgt.
quelle
Wenn Sie sich in einer Nur-Browser-Umgebung befinden , verwenden Sie die SridharR -Lösung.
Wenn Sie sich in einer Node / CommonJS + Browser-Umgebung befinden (z. B. Elektron, Node-Webkit usw.); Der Grund für diesen Fehler ist, dass die Exportlogik von jQuery zuerst prüft
module
, nichtwindow
:Beachten Sie, dass es sich
module.exports
in diesem Fall über exportiert . sojQuery
und$
sind nicht zugeordnetwindow
.Also, um dies zu lösen, anstatt
<script src="path/to/jquery.js"></script>
;Weisen Sie es einfach selbst durch eine
require
Aussage zu:HINWEIS: Wenn Ihre Elektronen-App nicht benötigt wird
nodeIntegration
, stellen Sie siefalse
so ein , dass Sie diese Problemumgehung nicht benötigen.quelle
window.jQuery = window.$ = require('jquery');
Dies funktionierte für mich, als ich versuchte, einen Brunch-Build mit jQuery 2 und Bootstrap 3 zusammenzustellen. Ich brauchte jedoch nur einige Stunden, um Ihre Antwort zu finden :(. Ändert sich diese Anforderung in späteren Versionen von jQuery?nodeIntegration
, stellen Sie siefalse
so ein , dass Sie diese Problemumgehung nicht benötigen.npm install jquery
nicht mit Laube installieren .Sie sollten zuerst jquery laden, da Bootstrap jquery-Funktionen verwendet. so was:
quelle
Sie müssen JQuery hinzufügen, bevor Sie Bootstrap- hinzufügen.
quelle
Sie haben für JAVASCRIPT und BOOTSTRAP eine falsche Reihenfolge angegeben
Gemäß der Konvention muss der Bootstrap der Definition der JQuery-Datei folgen
quelle
In meinem Fall ist die Lösung wirklich albern und seltsam.
Der folgende Code wurde von der Datei _Layout.cshtml vorab ausgefüllt. (NICHT von mir geschrieben)
Bei der Überprüfung im Skriptordner war jquery-1.10.2.min.js jedoch nicht einmal verfügbar. Ersetzen Sie daher den Code wie unten, wobei jquery-1.9.1.min.js eine vorhandene Datei ist:
quelle
Ich verwende NodeJS und habe den gleichen Fehler erhalten. Wie bei den anderen Antworten lag das Problem auch darin, dass JQuery vor dem Bootstrap geladen werden musste. Aufgrund der NodeJS-Eigenschaften musste diese Änderung jedoch in der Datei pipe.js angewendet werden .
Die Änderung in Pipeline.js war wie folgt:
Ich benutze auch Grunzen, um zu helfen, und es hat automatisch die Reihenfolge auf der HTML-Hauptseite geändert:
Ich hoffe es hilft! Du hast nicht gesagt, was deine Umgebung ist, also habe ich beschlossen, diese Antwort zu posten.
quelle
Wenn Sie verwenden,
require.js
müssen Siewindow.$ = window.jQuery = require('jquery')
in app.js hinzufügenODER Sie können eine abhängige Datei nach dem Laden der übergeordneten Datei laden
Der oben gezeigte Code
bootstrap
ist abhängig von,Jquery
also habe ich ihn hinzugefügtshim
und abhängig gemachtquelle
Wenn Ihr Code gut aussieht, überprüfen Sie, ob jQuery erfolgreich auf Ihren Server geladen wurde. In meinem Fall wurden die jQuery-Dateien von meiner IDE auf dem Server veröffentlicht, aber der Webserver hatte nur einen 0-KB-Dateistub. Ohne Inhalt konnte der Server die Datei nicht an den Browser senden.
Nachdem ich die Datei erneut veröffentlicht und überprüft habe, ob der Server tatsächlich die gesamte Datei empfangen hat, hat meine Webseite den Fehler nicht mehr angezeigt.
quelle
Sie müssen JQuery js hinzufügen, bevor Sie die Bootstrap js-Datei hinzufügen, da BootStrap die jqueries-Funktion verwendet. Stellen Sie also sicher, dass Sie zuerst jquery js und dann bootstap js file laden.
quelle
Wenn dies nur im IE-Intranet auftritt, überprüfen Sie die Kompatibilitätseinstellungen und deaktivieren Sie "Intranetsites im Kompatibilitätsmodus anzeigen".
IE -> Einstellungen -> Kompatibilität
quelle
In offiziellen Dokumenten: https://electronjs.org/docs/faq#i-can-not-use-jqueryrequirejsmeteorangularjs-in-electron
quelle
Ich hatte fast alle oben genannten Methoden ausprobiert.
Schließlich behoben, indem die
direkt nach dem Laden der statischen Dateien, dh
{% load staticfiles %}
in base.htmlquelle
Nachdem ich mit diesem Problem zu kämpfen hatte, machte ich drei Schritte:
<body></body>
Tags und nicht am<head></head>
. Diese haben bei mir funktioniert, aber je nach verwendetem Browser kann es zu unterschiedlichen Verhaltensweisen kommen.quelle