勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

adblock(広告削除)設定している場合はページを表示させない

   2024/04/17  jQuery

iPhoneのSleipnirでネットをしていると「広告がブロックされたのでページを表示できません」というメッセージを出すサイトがあった。それまで知らなかったんだけどSleipnirにはadblock的な広告排除機能があるみたい。

そこで、どのような方法でadblock対策をしているのかが気になった。見てみたところ割とシンプルに対策できるみたい。以下がサンプルとソース。

 

BlockAdblockを使う方法(2023/08/09追記)

BlockAdblockというライブラリを使う方法を以下に追記。

ブラウザの広告ブロッカーを検知し、ブロックしている場合は何らかの処理を行う方法

 

サンプル

https://taitan916.info/sample/adblock/

 

ソース

<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>広告ブロック対策のテスト</title>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script>
$(function() {
    setTimeout(function() {
        if ($('.adsense').find('span,iframe').is(':visible')) {
            $('block_message').hide();
        } else {
            $('.block_message').show();
            $('.contents').hide();
        }
    }, 1000);
});
</script>
</head>
<body>
    <div class="contents">
        body<br>
        body<br>
        body<br>
        body<br>
        body<br>
        body<br>
        body<br>
        body<br>
        body<br>
    </div>

    <div class="adsense">
        <!-- ここにアドセンスコード入れる -->
    </div>

    <div class="block_message" style="display:none;">
        広告がブロックされている為、コンテンツを表示できません。
    </div>

</body>
</html>

 

その他

classがadsens内のiframeを探して非表示状態であればコンテンツを非表示にし、警告文を表示させるというもの。あとは以下のようなスクリプトもあった。

antiblock.org

http://antiblock.org/

Downloadのリンクからソースを取得できる。ただ、PCでは正常に動いたけどiPhoneでは動かなかった。

 - jQuery

  関連記事

要素の表示or非表示

今まで要素の表示or非表示をCSSで操作する際、 display:none; / ...

formでファイルを選択した際にファイル名やサイズ、形式を調べる方法

フォームで画像などをアップロードする際に「ファイルサイズが大きすぎないか?」「拡 ...

jQueryにて複数のajax処理のレスポンスをまとめて表示する方法

同時にajax処理を行う際、挙動やコードの書き方に悩まされることが多い。例えばA ...

FlashとjQueryを組み合わせたプラグインでWebカメラで撮影した画像をアップロード

FlashとjQueryを組み合わせたプラグインを用いてWebカメラで撮影した画 ...

Jcropを使ってブラウザ上で画像を範囲指定して切り抜き(トリミング)

やりたかった事は、画像をアップロードして必要な部分のみを範囲指定してもらい、指定 ...