前の記事 ≪:CSS3でブロックで組み上げたような文字グラフィックをつくれる「ISO-BLO...
次の記事 ≫:AppStoreでのスクリーンショットを一括作成できるPSDファイル

コピペでOK。iOS9のAdBlockが有効な場合にページの表示を無効にするサンプル

2015年09月24日-はてなブックマーク

スポンサード リンク
[PR] 英単語を忘却曲線アプリを使って超効率よく記憶する方法

sitexw/FuckAdBlock GitHub

iOS9のAdBlockerが話題となっていますが、FuckAdBlockを使うことでAdBlockerがインストールされているかどうかの検出が可能です。
iOS9のAdBlockが有効な場合にページの内容を無効にするサンプルを、非プログラマの方でもコピペで簡単に使えるように書いてみました。
現状、有料アプリで1位となっているため、サイトの利用者層によっては、これから売上等に影響が出てくるのかもしれません。
有効・無効によってUserAgent等が書き換わらないため、こういったライブラリはイタチごっことなるのかもしれませんが、便利に使えるようでした。

<script type="text/javascript" src="path/to/fuckadblock.js"></script>
<script type="text/javascript">
// AdBlockerが検出されなかった場合に呼び出される関数
function adBlockNotDetected() {
}
// AdBlockerが検出された場合に呼び出される関数
function adBlockDetected() {
    // MARK: コンテンツを書き換える
    document.write('コンテンツを閲覧するにはAdBlockerをオフにしてください');
}
// fuckadblock自体がブロックされた場合においての対策
if(typeof fuckAdBlock === 'undefined') {
    adBlockDetected();
} else {
    // fuckAdBlockの初期化
    fuckAdBlock.on(true, adBlockDetected).onNotDetected(adBlockNotDetected);
}
// オプションの設定
fuckAdBlock.setOption({
    checkOnLoad:true, // ページ読み込み時に発動
    resetOnEnd:false  // チェック後にイベントを終了
});
</script> 

ほぼサンプルそのままですが(^^;) 無駄な部分を省いてコメントを日本語化して使いやすくしてみました。
adBlockDetected関数の中身でCookie等に属性を設定する等して、サーバ側でブロックされていないアドネットワークに切り替えたり、一部コンテンツを非表示・無効化するなどしてサイトにあわせて対策を考えられそうです。
お使いのサーバに fuckadblock.js をダウンロードし、path/to/fuckadblock.js へのパスは書き換えてご利用下さい。

関連エントリ

関連の記事検索:iOS, JavaScript, あとで読む
スポンサード リンク

By.KJ : 2015年09月24日 09:00 livedoor Readerで購読 Twitterに投稿

間違いの指摘をしていただける方はメール、あるいはTwitter/FBでお願いします(クリック)