42

目の疲れを軽減するためにページを暗くしたり反転させたりする別の Chrome アプリを探しています。機能するアプリをいくつか見つけましたが、これらのアプリが上書きしていないように見える唯一のものは、白い空白のページです。

新しいページが読み込まれると、Chrome は最初に白い空白のページを表示し、ページの読み込み中にウェブサイトのコンテンツを表示します。この While ページを上書きして Black と言う方法はありますか? 現時点では、リンクをクリックするか、新しい Web ページを開くたびに、画面が暗い色から (反転/暗いページ アプリを介して) 一瞬白い空白の画面になり、その後新しいページが再び暗い色で読み込まれます。これは、新しいページが読み込まれるたびに画面で「ホワイト フラッシュ」のように機能し、さらなる眼精疲労を引き起こします。これが、この白の色を黒にオーバーライドする方法があるかどうかを知りたい理由です。

Ps。この投稿が間違ったフォーラムにある場合は、お詫びします。Google Chrome 開発者ページにフォーラムへのリンクがあり、ここに来ました :)

ありがとう。

4

1 に答える 1

27

マニフェスト.json

{
    "name": "Background",
    "permissions" : ["http://*/*", "https://*/*"],
    "version": "1.0",
    "content_scripts": [{
        "matches": ["http://*/*", "https://*/*"],
        "js": ["script.js"],
        "all_frames": false,
        "run_at": "document_start"
    }],
    "manifest_version": 2
}

script.js

var color = document.documentElement.style.backgroundColor;
document.documentElement.style.backgroundColor = "black";
var observer = new MutationObserver(function(mutations) {
    mutations.forEach(function(mutation) {
        if (mutation.target.nodeName == "BODY") {
            observer.disconnect();
            document.documentElement.style.backgroundColor = color || "";
        }
    });
});
observer.observe(document, { childList: true, subtree: true });

すべてのファイルをフォルダーに入れます。Chrome で、[設定] -> [拡張機能] -> [開発者モード] をオンにする -> [展開された拡張機能を読み込む] -> 作成したばかりのフォルダーを選択します。

于 2013-04-26T22:53:13.330 に答える