2012-11-18 12 views
5

Zajmuję się projektem Django na localhost z niektórymi załączonymi plikami JavaScript w szablonie base.html. Moja JavaScript obejmuje są na dole strony:Django JavaScript ładowanie się nieregularnie

... other stuff... 
<script src="/media/js/jquery.js" type="text/javascript"></script> 
<script src="/media/js/jquery-ui-1.9.1.custom.js" type="text/javascript"></script> 
<script src="/media/js/bootstrap.js" type="application/javascript"></script> 
<link rel="stylesheet" href="/media/css/pepper-grinder/jquery-ui-1.9.1.custom.css" /> 
{% block extrajs %} 
{% endblock %} 
</body> 

Czasami, ale takie rozwiązanie nie zawsze, gdy załadować lub odśwież stronę, żądanie GET do jednego z plików JavaScript nie powiedzie się. Czasami jest to żądanie jquery-ui, czasami jest to dla samej jQuery, a innym razem dla bootstrap.js. Jeśli wkleję adres URL bezpośrednio do przeglądarki, plik JavaScript ładuje się idealnie dobrze, więc nie stanowi to problemu z moimi adresami URL mediów.

W Chrome, jeśli kliknę błąd konsoli i wyświetlę kartę sieci, stan mówi "(nie powiodło się)", a typ "oczekuje". Nagłówki żądań zdają się wskazywać, że żądanie nie zawiodło, po prostu nie przeszło wcale.

Request URL:http://localhost:8111/media/js/jquery-ui-1.9.1.custom.js 
Request Headersview source 
Accept:*/* 
Cache-Control:no-cache 
Pragma:no-cache 
Referer:http://localhost:8111/reservation/create/ 
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1229.94 Safari/537.4 

Wreszcie ładowanie stron w Firefoksie robi nie produkować błąd, ale pokazuje, że odpowiedź dla plików JavaScript zwraca 304.

Czy ten problem jak ja służąc mój media statyczne (nic specjalnego poza zwykłymi ustawieniami mediów statycznych)? z Chrome? Jak mogę rozwiązać problem?

Odpowiedz

5

Spróbuj wyłączyć rozszerzenia Chrome i sprawdź, czy to pomaga. Miałem ten sam problem i okazało się, że to rozszerzenie Adblock, które spowodowało problem.

AKTUALIZACJA: Zgodnie z @jessykate, pełnym rozwiązaniem wydaje się również aktualizacja Chrome do najnowszej wersji - co najmniej 23.0.1271.91.

+1

dziękuję - to nie było takie rozwiązanie, ale doprowadziło mnie to do faktycznego rozwiązania, które aktualizowało chrome. Jestem teraz w wersji 23.0.1271.91 i błędy już nie występują. ponieważ to pomogło prowadzić tak, że oznaczyłem to jako poprawne. dzięki! – jessykate

+0

@jessykate wspaniale znalazłeś rozwiązanie. również zaktualizowałem swoją odpowiedź. –

1

Błąd 304 oznacza, że ​​plik nie został zmodyfikowany, więc Twój komputer nie musi pobierać tego pliku z serwera. Więc to nie jest błąd - to tylko wskazówka, że ​​twoja przeglądarka jest bardziej wydajna.

Jeśli plik został ostatnio zmieniony i chcesz zobaczyć zmiany, spróbuj wyczyścić pamięć podręczną.

+0

dziękuję, ale problem polega na tym, że dostaję błąd w chrome, więc żaden z moich javascriptów nie działa. – jessykate

+0

może spróbuj zmienić