重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

JSを用いてサイトを開いた際にランダムでバナー表示する仕組みを作りたいと思っているのですが、
2のバナーの時には別窓で開き1のバナーの時はセルフで開くような設定を施す場合は
どの用に書けばいいでしょうか?

一応いろいろと調べて下記までは書いてみたのですが。。。
うまく動きません。。。
どなたか助けていただけませんでしょうか?

よろしくお願いします。

<SCRIPT language="JavaScript">
<!--
// ランダムに画像を表示する
jmp = new Array();
img = new Array();
tgt = new Array();
// ジャンプ先のアドレス(数字は画像と対応)
jmp[0] = "wwwwwww.com";
jmp[1] = "wwwwwww.com";
// 画像のアドレス(数字はジャンプ先のアドレスと対応)
img[0] = "img/01.jpg";
img[1] = "img/01r.jpg";
// ブランクの指定
tgt[0] = "_self";
tgt[1] = "_blank";
n = Math.floor(Math.random()*jmp.length);
document.write("<a href='"+jmp[n]+"'>");
document.write("<img src='"+img[n]+"' target='"+tgt[n]+"' border='0'>");
document.write("</a>");
//-->
</SCRIPT>

A 回答 (2件)

同条件のJSを作ってみました。


但し、バナーはn:n対応の処理になっています。
参考にどうぞ!


<SCRIPT language="JavaScript">
<!--
var BrNum = 1; //表示するバナー件数
var toRandomNum = 0;
var aRDM = new Array();
var aLNK = new Array();
i = 0;
aLNK[i++] = new MakeTable("01.jpg","http://www.111111.com/","_self");
aLNK[i++] = new MakeTable("02.jpg","http://www.222222.com/","_blank");
//==================================
// TABLE CREATE FUNCTION
//==================================
function MakeTable(ImgFile,SiteUrl,LinkTarget){
this.IMG = ImgFile;
this.URL = SiteUrl;
this.TGT = LinkTarget;
return this;
}
// ランダム処理
beRandom();
// 書き込み処理
for (j = 0; j < BrNum; j++){
document.write("<a href='"+aLNK[aRDM[j]].URL+"'><img src='"+aLNK[aRDM[j]].IMG+"' target='"+aLNK[aRDM[j]].TGT+"' border='0'></a>");
}
//==================================
// ランダム処理
//==================================
function beRandom(){
toSet = 0;
do{
for (i=0;i<aLNK.length;i++){
if (beCheck() == 0){
aRDM[toSet] = toRandomNum;
toSet++;
}
}
}while(toSet < aLNK.length)
}
function beCheck(){
toRandomNum = Math.floor(Math.random()*(aLNK.length));
for (j=0;j<toSet;j++){
if (aRDM[j] == toRandomNum){
return 1;
}
}
return 0;
}
//-->
</SCRIPT>
    • good
    • 0
この回答へのお礼

ありがとうございます!
試してみたいと思います。

お礼日時:2010/10/15 02:29

それで書き出されるHTMLは以下のようになるけれど、HTMLがおかしくない?



<a href='wwwwwww.com'>
<img src='img/01r.jpg' target='_blank' border='0'>
</a>

          ↓

<a href='wwwwwww.com' target='_blank'></a>
    • good
    • 0
この回答へのお礼

本当ですね。。。すいません。。。
一応
n = Math.floor(Math.random()*jmp.length);
document.write("<a href='"+jmp[n]+"' target='"+tgt[n]+"'>");
document.write("<img src='"+img[n]+"' border='0'>");
document.write("</a>");

書き換えてみたのですが。。。
今度は画像自体がきえてしまいました。。。

お礼日時:2010/10/08 20:07

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!