14

私のユーザースクリプトは、を使用していくつかの情報を出力しconsole.log()ます。

これは Chrome では問題なく動作しますが、このユーザースクリプトを Firefox (Greasemonkey) にインストールすると、Firefox の Web コンソールに何も表示されません。

私は解決策を検索し、使用することを提案しunsafeWindowたものもありましたが、出力も表示されていません。またunsafeWindow、クロムには使用できません。Firebug もインストールしましたが、役に立ちませんでした。どうすればこれを解決できますか?

たとえば、Firefox で次のユーザースクリプトを試してみました。

// ==UserScript==
// @name        console
// ==UserScript==
console.log("hello");
4

3 に答える 3

19

Greasemonkey経由でインストールすると機能しないということですか?
少し前まで、Greasemonkeyはconsole.logを壊しました(New!バグレポート)。ここで、Greasemonkeyからのプレーンコールの結果を確認するには、 FirebugではなくFirefoxのエラーコンソールconsole.log()を確認する必要があります。

次のボタンを押すと、FFのエラーコンソールが表示されますCtrlShiftJ

ただしunsafeWindow.console.log()、 ChromeスクリプトとGreasemonkeyスクリプトの両方で使用できます。Chromeのサポートは制限されていunsafeWindowます。

を使用すると、 GreasemonkeyからFirebugのすべてのロギング機能unsafeWindowにアクセスできます。(Firebugをインストールする必要がありますが、Chromeユーザースクリプトでは機能しない可能性があります。しばらくの間、その方法でテストしていません。)


Firefoxでは、Firebugがインストールされていない場合、またはFirebugがページに対してアクティブでない場合unsafeWindow.console.log()呼び出しは新しい「Webコンソール」(CtrlShiftK)に表示されます。Greasemonkeyスクリプト内でwhen
を使用する必要があります。unsafeWindow

Firefoxは現在、、、、およびネイティブをサポートしていることに注意してください。Firebugは必要ありませんconsole.log()console.info()console.warn()console.error()

于 2012-04-13T05:53:40.157 に答える
5

ちょっと待ってください: 質問が Greasemonkey を使用してコンソールにログインすることに関するものである場合 (私は、タグを付けたのを見たとできます)、このメソッドを使用してみませんGM_logか?

// ==UserScript==
// @name          GM_log Example
// @namespace     http://www.example.com/
// ==/UserScript==

GM_log("This is an example of GM_log");

または、何か不足していますか?

PS: javascript.options.showInConsoleabout:config で確認することもできます。である必要がありますtrue

于 2012-04-14T04:24:15.300 に答える