Без упаковки window.console
себя, я не считаю, что это возможно. Если посмотреть на источник, то кажется, что когда вызывается метод Firebug console
(выполняющийся внутри основного документа и, следовательно, не имеющий специальных привилегий), он оставляет некоторые объекты, лежащие в основном документе, а затем вызывает настраиваемое событие. Слушатель Firebug, работающий в привилегированном подключаемом модуле, берет событие, подбирает объекты, оставшиеся в документе, и добавляет соответствующие вещи на панель консоли, которая является частью Chrome браузера и поэтому недоступна для JavaScript, запущенного в основном окно.
Я мог ошибаться в деталях этого, потому что я только бегло взглянул на источник Firebug и сделал очень мало плагинов для Firefox, но я думаю, что это в целом правильно.
о ирония - я написал сверху проголосовал ответ на этот вопрос ... – nickf 2010-12-07 10:39:03