dポイントプレゼントキャンペーン実施中!

お世話になります。
こちら(http://oshiete1.goo.ne.jp/qa2200463.html)の質問・解答を元に、
Javascriptでアクセス毎(更新毎)に5枚の画像を順番に表示する事が出来たのですが、
ブラウザの更新をしていくと、
1枚目画像→2枚目画像→3枚目画像→4枚目画像→5枚目画像→使用不可画像(undefined)となってしまいます。
5枚目画像が表示された後は、1枚目画像→2枚目画像・・・・というように
ループさせたいのですが、問題点をご教授お願い致します。
なお、ソースは以下の通り記述しております。

<script type="text/javascript">
<!--
var limit = 14;//Cookieの有効期限(14日間)
var imgNo = 0;
//以下、画像のリスト
var imgList = new Array;
imgList[0] = 'img_1.jpg';
imgList[1] = 'img_2.jpg';
imgList[2] = 'img_3.jpg';
imgList[3] = 'img_4.jpg';
imgList[4] = 'img_5.jpg';

if(document.cookie.length > 0) imgNo = parseInt(document.cookie.substring(6,99));

document.write('<img src="'+imgList[imgNo]+'" alt="">');

if( ++imgNo > imgList.length) imgNo = 0;
var d=new Date();
d.setTime(d.getTime()+24*limit*60*60*1000);
document.cookie='imgNo='+ imgNo +' ; expires='+d.toGMTString();
//-->
</script>
<noscript><img src="img_1.jpg" width="500" height="500"></noscript>

A 回答 (1件)

イメージの数は5なので、


if( ++imgNo > imgList.length) imgNo = 0;
では、最大で5になってしまい、
imgList[5]=画像無し

if( ++imgNo >= imgList.length) imgNo = 0;
と修正すればOKだと思います
    • good
    • 0
この回答へのお礼

pipipi523様
早々のご教授、有難う御座います!!
教えて頂いた方法で修正できました。
大変助かりました。 今後とも宜しくお願い致します。

お礼日時:2007/05/10 13:20

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