Próbuję sprawdzić, czy moja biblioteka Jquery jest załadowana na moją stronę HTML. Sprawdzam, czy działa, ale coś jest nie tak. Oto co mam:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript" src="/query-1.6.3.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
if (jQuery) {
// jQuery is loaded
alert("Yeah!");
} else {
// jQuery is not loaded
alert("Doesn't Work");
}
});
</script>
javascript
jquery
SoftwareSavant
źródło
źródło
alert(window.$?1:0)
<!doctype html>
zamiast tego$(document)
funkcja ready w ogóle działa, ładowane jest jquery. Możesz więc po prostu zrobić$(document).ready(function(){ alert("Ready!"); });
Granted, to nie wyświetli alertu, jeśli jquery nie uruchomi się. Ale wystarczy, jeśli po prostu chcesz sprawdzić, czy poprawnie odniosłeś się do biblioteki jquery.Odpowiedzi:
Cóż, używasz jQuery do sprawdzania obecności jQuery. Jeśli jQuery nie jest załadowany, to
$()
nawet w ogóle nie zostanie uruchomiony, a wywołanie zwrotne nie zostanie wykonane, chyba że używasz innej biblioteki, a ta biblioteka ma to samo$()
składnię.Usuń swoje
$(document).ready()
(window.onload
zamiast tego użyj czegoś takiego ):źródło
jQuery
jest niezdefiniowany. Musisz sprawdzićwindow.jQuery
.src
ma przewodzenie/
, to znaczy, że szuka w korzeniu.Jak na ten link:
jest jeszcze kilka w komentarzach do linku,
Mam nadzieję, że to obejmuje większość dobrych sposobów na zrobienie tego !!
źródło
if (jQuery) {
zgłosi błąd w trybie ścisłym, jeśli jQuery nie jest załadowany, więc ostatni fragment kodu jest złą sugestią.źródło
Możesz to zrobić szybko na karcie konsoli podczas przeglądania swojej strony internetowej.
Na przykład:
Jeśli zwraca
true
, oznacza to, że jest załadowany.źródło
Uncaught ReferenceError: jQuery is not defined
Tylko mała modyfikacja, która może faktycznie rozwiązać problem:
Zamiast
$(document).Ready(function()
używaćwindow.onload = function()
.źródło
Jeśli
jQuery
ładuje się asynchronicznie, możesz poczekać, aż zostanie zdefiniowany, sprawdzając go za każdym razem:Tej metody można użyć dla dowolnej zmiennej, na którą czekasz.
źródło
Możesz po prostu wpisać
window.jQuery
Console. Jeśli zwróci funkcję (e, n) ... Następnie zostanie potwierdzone, że jquery zostało załadowane i działa poprawnie.źródło
Szybkim sposobem jest uruchomienie polecenia jQuery w konsoli programisty. W dowolnej przeglądarce naciśnij F12 i spróbuj uzyskać dostęp do dowolnego elementu.
źródło