2017-04-16 2 views
0

Ich habe eine einfache HTML-Datei, in der jQuery enthalten ist. In Safari funktioniert es aber in Firefox wird es nicht geladen. Und wenn ich $ verwenden erhalte ich die folgende Fehlermeldung in Firefox:jQuery lädt nicht in Firefox

Reference: $ nicht definiert

<!doctype html> 
<html> 
<head> 

</head> 
<body> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js" type='text/javascript' integrity="sha384-A7FZj7v+d/sdmMqp/nOQwliLvUsJfDHW+k9Omg/a/EheAdgtzNs3hpfag6Ed950n" crossorigin="anonymous"></script> 
<script> 
    if (window.jQuery) { 
     alert("loaded"); 
    } else { 
     alert("not loaded"); 
    } 
</script> 
</body> 
</html> 
+0

Erhalten Sie irgendwelche Fehlermeldungen, wenn es versucht, die Datei zu laden? – Barmar

Antwort

0

meisten Wahrscheinlich stimmt der Wert des Integritätsattributs nicht mit dem Hashwert des Skripts überein. Könnten Sie bitte im Konsolenfenster nachsehen, wenn Sie einen Fehler bekommen?

Ich habe die Ursache herausgefunden. Basierend auf Caniuse Website, Safari tut NICHT implementieren diese Funktion und damit Sie nicht das Problem auf Safari sehen. Gleicher Fall für IE und Edge. siehe unten: enter image description here

+0

Danke! Ich habe den Hash entfernt und es hat funktioniert. – Sam

0

ich Code wie folgt ausprobiert und es funktioniert

<!doctype html> 

    <html> 
    <head> 

    </head> 
    <body> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js" ></script> 
    <script> 


     if (window.jQuery) { 
      alert("loaded"); 
     } else { 
      alert("not loaded"); 
     } 
    </script> 
    </body> 
    </html> 
+0

Normalerweise verwende ich die Entwicklungsversion von Firefox; zum Testen habe ich Chrome und das "normale" Firefox heruntergeladen und auf beiden bekomme ich "nicht geladen" außer Safari. – Sam

0

Ich hatte das gleiche Problem heute wurden mehrere Funktion nicht von Firefox zu arbeiten und auch Safari, ich überprüft und festgestellt, dass einer von ihnen außerhalb der Aussage war:

jQuery(document).ready(function(){ 
     //your code 
    }); 

I Habe die Funktion wieder drin und alles hat gut funktioniert. Versuchen Sie also, die (Dokument-) .ready-Funktion in Ihr Skript einzufügen. Es scheint, dass Chrome "am intelligentesten" ist, um jQuery zu erkennen und auszuführen.

Verwandte Themen