サイト中の広告(の一部)を非表示にする

| | コメント(0) | トラックバック(0)

サイトを回ってると、本文の中に広告がちりばめられていて読みにくい事があります。
どれがコンテンツでどれが広告か分からなくなる事も?
そんな時、ブックマークレットで非表示にするように試みてみました。

「Ads by Google」を非表示にするブックマークレット

今までは、個人的に「Ads by Google」を非表示にするブックマークレットを使っていました。
(↓1行です)

javascript:(function(){var ifr,i;ifr=document.getElementsByTagName('iframe'); for(i=0;i<ifr.length;i++){ if(ifr.item(i).getAttribute(%22name%22)==%22google_ads_frame%22){ ifr.item(i).setAttribute(%22style%22,%22display:none;%22);}}})()

ちょっと整形するとこんな感じ。

javascript:(function(){
  var ifr,i;
  ifr=document.getElementsByTagName('iframe');
  for(i=0;i<ifr.length;i++){
    if(ifr.item(i).getAttribute('name')=='google_ads_frame'){
      ifr.item(i).setAttribute('style','display:none;');
    }
  }
})()

<iframe name="google_ads_frame">なエレメントを「display:none」するというもの。

もうちょっと多くの広告を非表示になるように試みたブックマークレット (Firefox用)

もうちょっと多くの広告を非表示にできるようにしようと思って、作り直し。
Firefox用として作りました。IEでは動きません。
(↓1行です)

javascript:(function(){function setNone(c) {var style=document.createElement(%22style%22);document.body.appendChild(style);var sht=style.sheet;sht.insertRule(c+%22{display:none;}%22,sht.cssRules.length);} setNone(%22#google_ads_frame,#adwrap,#ads1,#brandpanel,.pr%22);})()

ちょっと整形するとこんな感じ。

javascript:(function(){
  function setNone(c) {
    var style=document.createElement('style');
    document.body.appendChild(style);
    var sht=style.sheet;
    sht.insertRule(c+'{display:none;}',sht.cssRules.length);
  }
  setNone('#google_ads_frame,#adwrap,#ads1,#brandpanel,.pr');
})()

「setNone()」の引数に、「display:none」にする id名 や class名 をリストしておきます。
以下の部分↓

  setNone('#google_ads_frame,#adwrap,#ads1,#brandpanel,.pr');

今回は適当に id名 や class名 を設定したので、必要に応じて編集すると良いかも。

これで、本文を見難くさせていた広告の一部が非表示になるかも。

(2008/01/27 追記 ここから)

・・・と思ったら、「Ads by Google」をうまく非表示にできてなかったみたい。
なので、上記2つのブックマークレットを1つに統一↓。

javascript:(function(){var ifr,i;ifr=document.getElementsByTagName('iframe'); for(i=0;i<ifr.length;i++){if(ifr.item(i).getAttribute(%22name%22)==%22google_ads_frame%22){ ifr.item(i).setAttribute(%22style%22,%22display:none;%22);}} function setNone(c) {var style=document.createElement(%22style%22);document.body.appendChild(style);var sht=style.sheet;sht.insertRule(c+%22{display:none;}%22,sht.cssRules.length);} setNone(%22#adwrap,#ads1,#brandpanel,.pr%22);})()

(2008/01/27 追記 ここまで)

参考にしたサイト

・CSS + JavaScript Tips
http://amachang.art-code.org/usrb.in/amachang/static/cssstudy/200701/
勉強会資料。
横スクロールも素敵。

トラックバック(0)

このブログ記事を参照しているブログ一覧: サイト中の広告(の一部)を非表示にする

このブログ記事に対するトラックバックURL: http://kinshachi.ddo.jp/mt/mt-tb.cgi/481

コメントする


画像の中に見える文字を入力してください。

このブログ記事について

このページは、ikeが2008年1月26日 00:40に書いたブログ記事です。

ひとつ前のブログ記事は「robots.txtのCrawl-delay ディレクティブ」です。

次のブログ記事は「KeyHoleTV」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

最近のコメント

Powered by Movable Type 4.261