Firefox Web Console jest wyłączona?

131

Jak to się stało, że otrzymuję tę wiadomość z konsoli internetowej przeglądarki Firefox

Interfejs API logowania konsoli internetowej (console.log, console.info, console.warn, console.error) został wyłączony przez skrypt na tej stronie

Ta sama strona internetowa może drukować wiadomości w konsoli Chrome, ale nie w przeglądarce Firefox. Otworzyłem tę samą stronę w przeglądarce Firefox na innym komputerze (nie wiem w jakiej wersji) Konsola internetowa może drukować wiadomości. Moja wersja Firefoksa to najnowsza 8.0.

yeeen
źródło
2
szukaj kodu dla firebuga consolei upewnij się, że nie są one ustawione null, undefinedlubfalse
Seth
1
może wtyczka noscript robi to! po prostu sprawdź
UnLoCo

Odpowiedzi:

160

Dzieje się tak, gdy sama strona definiuje globalną zmienną o nazwie console, na przykład. Jeśli strona sniffuje przeglądarkę, aby zdecydować, czy ją zdefiniować, zachowanie może się różnić w różnych przeglądarkach.

W przypadku Firefoksa dzieje się to również wtedy, gdy zainstalowany jest Firebug i jego konsola jest włączona, ponieważ zastępuje to ustawienie domyślne window.console.

Boris Zbarsky
źródło
75
@yeeen Czy masz zainstalowany Firebug? window.console
Nadpisuje
1
tak i hv Firebug. Jak więc korzystać z konsoli Firebuga lub co mam zrobić? Ale dlaczego na drugim komputerze, na którym zainstalowano przeglądarkę Firefox z Firebug, nie ma problemu?
jen
5
@yeeen Możesz otworzyć Firebuga i użyć jego konsoli, tak. Lub możesz wyłączyć Firebug, jeśli nie chcesz, aby porywał konsolę. Jeśli chodzi o drugą maszynę… czy ma włączony panel konsoli w Firebug?
Boris Zbarsky
widzę ... inna maszyna nie ma włączonego panelu konsoli HV, mój komputer ma ... nic dziwnego
jeeeen.
4
@BorisZbarsky klauzula Firebug jest prawie odpowiedzią samą w sobie. Czy mógłbyś uwzględnić to w poprawnej odpowiedzi?
Barney
30

Miałem ten sam dokładny komunikat o błędzie, a po usunięciu firebuga zniknął.

Nie mówię, że powinieneś usunąć firebuga, uwielbiam firebuga, ale najprawdopodobniej jest to również źródło błędu. Jeszcze jedna uwaga, błąd nadal występował, nawet jeśli firebug został wyłączony (wyłączony) dla tej konkretnej strony.

Costa
źródło
8
Wydaje się, że wystarczy rozwinąć menu kontekstowe z zakładki „Konsola” programu Firebug, odznaczyć pole wyboru „Włączone” i ponownie załadować stronę.
Jonas Berlin
@Mike Jestem pod coraz większym wrażeniem narzędzi programistycznych FF. I nie mogę się doczekać, aby sprawdzić WebIDE i App Manager. Mam dziś zestaw deweloperski dla Firefox OS.
Costa,
1
Oprócz wyłączania firebuga upewnij się, że kliknąłeś „Wyczyść listę aktywacji” z menu rozwijanego opcji firebug. Spowoduje to usunięcie wszystkich kodów firebug z Twojej strony. Teraz użyj ctrl + shift + k, aby wywołać konsolę Firefox, która wyświetla dzienniki konsoli.
Clain Dsilva,
2

Oto obejście JavaScript, którego użyłem do przywrócenia interfejsu API konsoli po ustawieniu go na pustą funkcję przez skrypt na stronie (działa w przeglądarce Firefox 46, testowana w Firebug i skrypcie greasemonkey):

function restoreConsole() {
    var i = document.createElement('iframe');
    i.style.display = 'none';
    document.body.appendChild(i);
    window.console = i.contentWindow.console;
    i.parentNode.removeChild(i);
}

Więcej informacji i poświadczeń: Przywracanie console.log ()

dominik
źródło
1

Kliknij prawym przyciskiem myszy kartę konsoli firebug i odznacz opcję „włączona” (pierwsza).

Panta Alejandro
źródło