前回、nend広告を既存ブラウザで表示する方法を紹介した。

i-mobileの広告でも同じことができる?できない?
答えはできる。
スタック・オーバーフローなどでnend広告に関する質問がいくつか投稿されているが、基本的に広告がどのように表示されているか、掲載されたコードがどのように動いているか、確認されていない方が多いと思われる。

i-mobileの広告を既存ブラウザで表示するには、nendと同様のコードを利用することで実現できる。
divタグのid名をnend_adspaceからimobile_adspotdiv1に書き換えるだけで済む。
つまり、リンク先のaタグを探すために、親要素となるdivタグを指定している。

※nend、i-mobile共に320×50サイズのバナーの場合。
[javascript]
addEventListener(“load”, function() {
var count = 0;
var timer = setInterval(function() {
var adAnchors = [];
var adSpace = document.querySelector(“div[id^=imobile_adspotdiv1]”);
if (adSpace != null) {
adAnchors = adSpace.querySelectorAll(“a”);
}
if (adAnchors.length > 0) {
clearInterval(timer);
for (var i = 0; i < adAnchors.length; i++) { (function() { var hrefShelter = adAnchors[i].href; adAnchors[i].removeAttribute("href"); adAnchors[i].addEventListener("click", function() { var w = window.open(hrefShelter, "_system", "location=no"); }, false); })(); } } else { count++; console.log(count); if (count > 4) {
clearInterval(timer);
}
}
}, 3000);
}, false);
[/javascript]

Recommended Posts