web-dev-qa-db-ja.com

ChromeでJavaScriptポップアップ/アラートを無効にするにはどうすればよいですか?

聞かれたら申し訳ありません。機能していない解決策がすでにいくつか見つかりました。私が何を間違っているのかわからない。

すべてのJavaScriptを無効にしたくないので、JavaScript警告ボックスのみを無効にします。ポップアップし、[OK]または[X]をクリックして閉じるように強制するもの。

これを行うと主張するユーザースクリプトを見つけました(例: http://userscripts.org/scripts/show/58252 )。 chromeを開発チャネルに配置し、chromeを--enable-user-scriptsスイッチで開始すると、スクリプトはインストール済みとして表示されます。

しかし、まだ警告ボックスが表示されます。

無効になっていないアラートボックスの例は http://wordswithfriends.net/ にあります。右側のサイドバーのWordバリデーターに不要なWordを挿入します。 Wordではないことを示すポップアップが表示されます。

20
CreeDorofl

警告ボックスを無効にする唯一の方法は、拡張機能またはユーザースクリプトをインストールすることです。リンクしたユーザースクリプトはFirefox Greasemonkey用であり、Chromeでは機能しません。

さらに、 引用する誤動作ページ はこっそりで、iFrameのリロード時にすぐにalert()を起動するコードを使用してiframeでその「Wordバリデーター」を実行します。

しかし、これを無効にするユーザースクリプトは次のとおりです。

_// ==UserScript==
// @name        Wordswithfriends, Block javascript alerts
// @match       http://wordswithfriends.net/*
// @run-at      document-start
// ==/UserScript==

addJS_Node (null, null, overrideSelectNativeJS_Functions);

function overrideSelectNativeJS_Functions () {
    window.alert = function alert (message) {
        console.log (message);
    }
}

function addJS_Node (text, s_URL, funcToRun) {
    var D                                   = document;
    var scriptNode                          = D.createElement ('script');
    scriptNode.type                         = "text/javascript";
    if (text)       scriptNode.textContent  = text;
    if (s_URL)      scriptNode.src          = s_URL;
    if (funcToRun)  scriptNode.textContent  = '(' + funcToRun.toString() + ')()';

    var targ = D.getElementsByTagName ('head')[0] || D.body || D.documentElement;
    targ.appendChild (scriptNode);
}
_

すべてのページでALL alerts()を本当に無効にする場合(非推奨)、_// @match_行を削除します。

17
Brock Adams

Chrome Web Store には 少なくとも1つの拡張子 があります。私には問題ありませんが、広告モードによるオプションのサポートがあると思われますが、設定ページで無効にできます。 (設定は見つかりませんでしたが、nullルーティングを損なうことはないと考えましたapi.s13.us。)

3
ecmanaut

このためのツールを探していて、ユーザースクリプトをいじりたくない場合は、Windowsシステムの迷惑なポップアップを処理できる素敵なツールがあります-ClickOffhere からダウンロードできます。チェックしたところ、SharePointサイトの「行った変更は保存されない可能性があります」というアラートで動作します。

0
Serhiy