匿名質問者

Javascript、もしくはJqueryで、「画像がいくつかあるうち、その中の4個をランダムで抽出して表示」、というようなスクリプトを簡潔に表記する方法を教えてください。

http://javascript.eweb-design.com/0804_ri.html
こちらのサイトのサンプル2を参考にしようと思ったのですが、どうすればよいか見当が付きませんでした。
サンプルはこうなっています。
→ Sample 2:画像をランダムに表示する
<SCRIPT language="JavaScript">
<!--
// ランダムに画像を表示する
img = new Array();
img[0] = "img/img0.jpg";
img[1] = "img/img1.jpg";
img[2] = "img/img2.jpg";
img[3] = "img/img3.jpg";
img[4] = "img/img4.jpg";
n = Math.floor(Math.random()*img.length);
document.write("<img src='"+img[n]+"' border='0'>");
//-->
</SCRIPT>

回答の条件
  • 1人50回まで
  • 登録:
  • 終了:2013/12/08 17:35:04

ベストアンサー

匿名回答1号 No.1

 順番はシャッフルしないですが。

img = new Array();
img[0] = "img/img0.jpg";
img[1] = "img/img1.jpg";
img[2] = "img/img2.jpg";
img[3] = "img/img3.jpg";
img[4] = "img/img4.jpg";
while(img.length>4){
  n = Math.floor(Math.random()*img.length);
  img.splice(n,1);
}
for (var i=0; i<img.length; i++){
  document.write("<img src='"+img[i]+"' border='0'>");
}
匿名質問者

なるほど、spliceというのを使って繰り返し切り出していくんですね。
望み通りの動作を確認しました。ありがとうございました。

2013/12/02 00:24:20

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません