Narzędzie dla programistów Chrome: skrypt html jest pusty (w źródle) samouczek dotyczący debugowania

90

Robię samouczek debugowania C hrome , używając NetBeans i Google Chrome. Wszystko, łącznie z rozszerzeniami, wydaje się działać poprawnie, ale kiedy docieram do sekcji Use the Debugger, nie widzę kodu HTML do wstawienia punktu przerwania.

Po wybraniu wyskakującego okienka inspekcji w przeglądarce otwiera się w konsoli, nic nie pokazuje, elementy wyświetla popup.html z dodanymi obrazami. Kiedy przechodzę do Źródeł, można otworzyć plik popup.html, ale jedyna linia, Linia 1, jest pusta. Jeśli otworzę plik js, plik js tam jest i można go edytować (wskazać przerwę).

Przepraszam - prawdopodobnie coś podstawowego, ale nie mam w tym dużego doświadczenia. Próbowałem przeładować i odświeżyć wszystko.

location.reload(true)DALSZE INFORMACJE : Po przejściu do wiersza poleceń konsoli plik popup.html stał się widoczny jako źródło! Czemu? Brak pomysłu.

Mam nadzieję, że to uratuje komuś cały dzień, który spędziłem na potykaniu się.

Dr Co
źródło
5
location.reload (true) działał dla mnie.
WillB3
Tak, ale spowoduje to ponowne załadowanie strony i utratę wszelkich interakcji, które mogłeś mieć na stronie przed otwarciem debugera.
Peter Brand
gdzie powinienem napisać „location.reload (true)”
sidhewsar
2
Wciąż mamy problem w 2019 roku!
Aamir Rizwan
Dzieje się tak w najnowszej wersji Chrome, październik 2019 r., Ale sztuczka location.reload (prawda) nic nie załadowała. Nawiasem mówiąc, okno źródłowe pokazuje tylko wiersz numer 1, ale nic więcej.
Howard Brown

Odpowiedzi:

53

Wygląda na to, że jest to znany problem z Chromium DevTools. Zasadniczo kod HTML i inne treści niebędące skryptami są już opróżniane przed otwarciem DevTools i nie ma niezawodnego sposobu, aby je odzyskać. Odświeżenie strony przy otwartym DevTools „rozwiązuje” problem.

Eric
źródło
4
Zgoda - mam problem i ta poprawka jest nieaktualna (w przypadku poprzedniego identycznego problemu) lub nie działa.
Dan Nissenbaum
3
ja też mam ten sam problem. Odświeżenie strony nie rozwiązuje problemu.
MH
17
możesz sprawić, by działało, zamykając narzędzia programistyczne i ponownie otwierając je za pomocą opcji sprawdzania elementu. Mi to pasuje.
Vishal,
7
Nadal w grudniu 2017!
Peter Brand
7
Błąd nadal występuje - maj 2019
Chris Rogers
48

w moim przypadku zamówienie pomogło

  1. zamknij pustą kartę w źródłach
  2. zamknij narzędzia deweloperskie
  3. otwarte narzędzia programistyczne
  4. otwórz zakładkę w źródłach (nadal jest pusta)
  5. Odśwież stronę
Andrey Zausaylov
źródło
1
Kto wie, czy będzie to niezawodna poprawka, ale tym razem zadziałało! 😁
James Hill,
1
Człowieku, szukałem od zawsze tej „poprawki”
Jordec
zadziałało dla mnie
Smith
to zadziałało również dla mnie
AVH
24

Miałem ten problem i właśnie stwierdziłem, że wyłączenie opcji „Włącz mapy źródeł JavaScript” w oknie ustawień Inspektora (F1) rozwiązało go

Odtworzyłem mapę js.map, ponownie włączyłem ustawienie, a źródło było nadal dostępne.

Więc myślę, że moim problemem było to, że obsługiwałem niezminimalizowany js (ustawienia deweloperskie), ale mapa (zbudowana dla ustawień prod) wciąż tam była i nieaktualna.

Paweł
źródło
4
zamknij chrome i otwórz ponownie po zmianie ustawienia!
Nateous
17

W moim przypadku nie mogłem uzyskać dostępu do konsoli, ponieważ jej karta również wyświetlała pustą stronę. Moim rozwiązaniem jest użycie kombinacji CTRL + SHIFT + I z pustym ekranem debugera w centrum uwagi, a następnie wpisanie parent.location.reload(true)w konsoli wyskakującego debugera.

Ikenna Anthony Okafor
źródło
2
Jak w komentarzu WillB powyżej, powoduje to ponowne załadowanie strony i utratę wszelkich interakcji, które mogłeś mieć na stronie przed otwarciem debugera.
Peter Brand
Niesamowite! To zadziałało dla mnie po 2 godzinach walki.
Zeeshan Adil
Nie wiem, co implikuje plik parent.location.reload, ale rozwiązał mój problem po kilku restartach / twardym odświeżaniu / opróżnianiu danych z pamięci podręcznej chrome! dzięki!
beluga
Cieszę się, że mogłem pomóc. Ponownie ładuje okno nadrzędne (puste okno, w którym wpisałeś CTRL + SHIFT + I) z okna podrzędnego.
Ikenna Anthony Oka na
5

W moim przypadku w chrome było rozszerzenie powodujące, że debugger podał pustą stronę indeksu w sekcji „brak domeny” debuggera. Po wyłączeniu wszystkich nieistotnych rozszerzeń w Chrome debugger ponownie pokazał prawidłowe źródło.

Brett Drake
źródło
4
Byłoby wspaniale, gdybyś zanotował problem z rozszerzeniem. Wiele rozszerzeń może być dla Ciebie nieistotnych i niezbędnych dla mnie. To sprawia, że ​​odpowiedź jest bezwartościowa.
Imad
5
Nie zgodziłbym się z „bezwartościowym”. Przynajmniej wiesz, aby sprawdzić wtyczki.
Brett Drake
To był mój problem - w moim przypadku zainstalowałem rozszerzenie UltraSurf Unblock VPN. Otwarcie lokalnej strony debugowania w oknie incognito wywołało ją natychmiast. Trochę "durrrr" moment, muszę przyznać :( haha!
IfElseTryCatch
Korzystanie z trybu incognito naprawiło to za mnie.
Petah
4

Dev Tools (F12) -> Okno ustawień Inspektora (F1) -> Przywróć domyślne i przeładuj [przycisk na dole] działa dla mnie!

Sylwia M
źródło
2

Zauważyłem, że niektóre poważne problemy z JavaScriptem powodują takie problemy. W moim przypadku błędnie nadpisałem cały dokument z powodu literówki.

Jeśli otrzymujesz pustą stronę HTML w debugerze Chromium WebTools, przyjrzyj się dobrze swojemu javascriptowi, aby upewnić się, że nie robi nic dziwnego.

AWT
źródło
1
Wydaje się, że to właśnie spowodowało problem dla mnie. W moim przypadku miałem złe odniesienie do jQuery. $ ('inputid') w przeciwieństwie do $ ('# inputid').
Vincent,
2

Naprawiłem swój problem, używając zupełnie nowej sesji z argumentem wiersza poleceń „--user-data-dir” i wyłączając opcję „Włącz mapy źródeł JavaScript”. Mój kod pojawia się dobrze w debugerze Firefoksa, więc wygląda na to, że jest spowodowany błędem Chrome.

Szymon
źródło
1

Miałem ten sam problem. Nawet odświeżenie strony nie zadziałało.

Przechodzenie chrome://helpi odświeżanie przeglądarki + restart działały dla mnie.

Możesz również zaktualizować Chrome za pomocą menu:

wprowadź opis obrazu tutaj

Charles
źródło
0

w moim przypadku stało się to nagle, po zainfekowaniu złośliwym oprogramowaniem i zresetowaniu przeglądarki - usunięto cache / appdata.

Rozwiązanie: usuń rozszerzenie, które może mieć wpływ na Js w moim przypadku

Usunąłem / wyłączyłem poniższe rozszerzenie i działałem https://chrome.google.com/webstore/detail/quick-javascript-switcher/geddoclleiomckbhadiaipdggiiccfje?hl=en

dziwne, ponieważ zanim umyję ten dodatek bez problemu, myślę, że to jak RKO do serca. :)

shareef
źródło
0

W moim przypadku przez kilka dni miałem łyk z Browsersync. Wypiłem łyk i rozwiązałem swój problem.

dman
źródło
0

Miałem również ten problem, gdy miałem ogromny plik skryptu java, miałem tę linię

                points.push({
                    location: new google.maps.LatLng(46.5376919, 4.5425704),
                    date : "5/8/2017 5:11:00 PM",
                    free : true
                });

w cyklu for i liczył 3000 elementów, więc plik urósł w skrypcie, a plik był pusty w źródłach chrome. (Myślę, że napotkałem pewne ograniczenie)

Po zmniejszeniu pliku przez usunięcie do 100 elementów działało dobrze.

Dongolo Jeno
źródło