AdGuard のポップアップ ブロッカーは、さまざまなブラウザーで不要なポップアップ ウィンドウをすべてブロックするユーザー スクリプトです。
Chrome、Firefox、Edge、Safari、IE10+ など、基本的にユーザースクリプト マネージャーをサポートするブラウザーで動作します。例外として、使用する API をサポートしていない一部の古いブラウザでは、スクリプトが完全に機能しない可能性があります。
ポップアップ ブロッカーは、ポップアップの検出にフィルタリング ルールのアプローチを適用しません。代わりに、ポップアップの作成に使用されるブラウザーのネイティブ API の上に追加のレイヤーが追加されます。こうすることで、これらの API は、ポップアップ/ポップアンダー スクリプトではなく、手動入力によって引き起こされた場合にのみ呼び出すことができます。これにより、WebRTC を使用したり広告サーバーを変更したりして通常の広告ブロッカーを回避しようとする Web サイトでもポップアップをブロックできます。
一目瞭然ですが重要です。クリックによってポップアップが表示される場合、ポップアップがブロックされるだけでなく、最初のクリックもポップアップが表示されない場合と同様に処理されます。
ページ上の他のスクリプトは、実際にポップアップを開こうとする以外に、ポップアップ ブロッカーが使用されていることを検出できません。これにより、ポップアップ ブロッカーの回避が阻止されます。
現在のリリース バージョン: https://userscripts.adtidy.org/release/popup-blocker/2.5/popupblocker.user.js
現在のベータ版: https://userscripts.adtidy.org/beta/popup-blocker/2.5/popupblocker.user.js
ポップアップ ブロッカーは AdGuard を開発したチームと同じチームによって開発されており、AdGuard for Windows はユーザー スクリプト マネージャーとして機能します。 AdGuard ユーザーの場合は、[設定] – [拡張機能] – [拡張機能の追加] に移動し、そこに目的のポップアップ ブロッカー .js ファイルの URL を入力します。これにより、文字通りどのブラウザでも使用できるようになります。
一方、Popup Blocker は独立したプロジェクトであり、Greasemonkey、Tampermonkey、Violentmonkey などの他のユーザースクリプト マネージャーと一緒に使用できます。ポップアップ ブロッカーを使用できるように、これらのいずれかがブラウザにインストールされていることを確認してください (アドレス バーにスクリプト URL を入力するだけで、マネージャーによって自動的に検出されます)。
許可リストに登録されたドメインとサイレント化されたドメインのリストは、専用のオプション ページで管理できます。
バグを報告するには、このページにアクセスして新しい問題を作成してください。
ポップアップ ブロッカーを他の言語に翻訳するのにご協力ください。 Crowdin に関する私たちのプロジェクトは一般からの寄付を募集しています。
開発ビルドではログ記録が有効になっており、ポップアップ/ポップアンダー スクリプトの動作をイントロスペクトするために、より多くのブラウザ API をオーバーライドします。通常の使用には適していません。
開発ビルドの単体テストはこちらです。
プロジェクトをビルドするには、次の手順に従います。
ターミナルで次のコマンドを実行して、ローカルの依存関係をインストールします。
yarn install
ビルドするには、ターミナルで次のコマンドを実行します。
$ NODE_ENV=<channel> ts-node tasks/builder --target=<target>
channel
目的のチャネル ( dev
、 beta
、またはrelease
に置き換えます。また、 target
目的のビルド ターゲットに置き換えます。
userscript
– 指定されたチャンネルのユーザースクリプトを構築します。options
– ビルド オプション ページ。これはスタンドアロン ページであり、許可された Web サイトと沈黙した Web サイトを管理する便利な方法をユーザーに提供します。tests
– テストを構築します。bundle
– 指定されたチャネルに対して上記のすべてを構築してバンドルします。あるいは、次のコマンドをミニミスト スタイルで実行することもできます。
yarn userscript-<channel>
yarn options-page
yarn tests
yarn bundle:dev
yarn bundle:beta
yarn bundle:release
開発用にビルドしている場合、出力は縮小されず、ブラウザー コンソールにログが含まれることに注意してください。
ベータ版とリリース版のビルドは縮小され、すべてのログ コードが削除されます。
オプション ページを使用してビルドし、 cd
コマンドでビルド フォルダーに移動し、選択したローカル サーバーを実行します。
yarn options-page
特定のアドレスとポートを許可するように、 option-init.ts
のisOptionsPage
変更します。その後、ユーザースクリプト (AG など) にもこのアドレスとポートが含まれていることを確認してください。
オプション ページを表示するには、AG がデバッグ ページをフィルタリングしていることを確認してください。
スクリプトをテストする簡単な方法は、http://code.ptcong.com/better-js-popunder-script/ にアクセスすることです。
ページ上の任意の場所をクリックしてポップアンダーを取得するか、特定のリンクを使用してポップアップ/ポップアンダー/タブアップなどを取得します。
予期される動作: 新しいウィンドウはブロックされ、右上隅に通知が表示されます。
オプション ページは、GitHub Pages 経由でデプロイされ、手動アクションDeploy popup blocker beta
およびbeta
とrelease
バージョンのDeploy popup blocker release
それぞれ設定されます。