初心者です。よろしくお願い致します。
複数ページ存在するうちの、各ページを更新するごとにランダムに変わる、重複しない5枚の画像を表示させたいと思います。
今現在、サイト上に掲載されてあったJavaScriptのサンプルを自分なりに変更してテストしているのですが、「重複しない」というところで壁にぶち当たってしまっています。
下記が現在のスクリプトです。
<body>
<script language="JavaScript"><!--
jumpURL = new Array();
imgURL = new Array();
jumpURL[0] = "アドレス";
jumpURL[1] = "アドレス
jumpURL[2] = "アドレス";
jumpURL[3] = "アドレス";
jumpURL[4] = "アドレス";
jumpURL[5] = "アドレス";
jumpURL[6] = "アドレス";
jumpURL[7] = "アドレス";
imgURL[0] = "top_img01.jpg";
imgURL[1] = "top_img02.jpg";
imgURL[2] = "top_img03.jpg";
imgURL[3] = "top_img04.jpg";
imgURL[4] = "top_img05.jpg";
imgURL[5] = "top_img06.jpg";
imgURL[6] = "top_img07.jpg";
imgURL[7] = "top_img08.jpg";
a = Math.floor(Math.random()*jumpURL.length);
document.write("<a href='"+jumpURL[a]+"'>");
document.write("<img src='"+imgURL[a]+"' border='0'><br>");
document.write("</a>");
b = Math.floor(Math.random()*jumpURL.length);
document.write("<a href='"+jumpURL[b]+"'>");
document.write("<img src='"+imgURL[b]+"' border='0'><br>");
document.write("</a>");
c = Math.floor(Math.random()*jumpURL.length);
document.write("<a href='"+jumpURL[c]+"'>");
document.write("<img src='"+imgURL[c]+"' border='0'><br>");
document.write("</a>");
d = Math.floor(Math.random()*jumpURL.length);
document.write("<a href='"+jumpURL[d]+"'>");
document.write("<img src='"+imgURL[d]+"' border='0'><br>");
document.write("</a>");
e = Math.floor(Math.random()*jumpURL.length);
document.write("<a href='"+jumpURL[e]+"'>");
document.write("<img src='"+imgURL[e]+"' border='0'><br>");
document.write("</a>");
// --></script>
</body>
現在では、画像枚数が8枚ですが、4、50枚に増える予定です。
また、スクリプトを書きやすくするために画像ファイルの名前をどのように変更してもかまわないと思っています。
上記のスクリプトは5枚の画像が表示されることはされるのですが、更新してから表示するまでの待ち時間が長いのが気になるので、できれば、欲を言うならば、早く表示してくれるようなスクリプトをご伝授していただければと思います。
よろしくお願い致します。
No.1ベストアンサー
- 回答日時:
シャッフルする部分と表示する部分をわけるとわかりやすい
<head>
<script>
jumpURL =[
{url:"アドレスA",alt:"A",img:"top_img01.jpg"}
,{url:"アドレスB",alt:"B",img:"top_img02.jpg"}
,{url:"アドレスC",alt:"C",img:"top_img03.jpg"}
,{url:"アドレスD",alt:"D",img:"top_img04.jpg"}
,{url:"アドレスE",alt:"E",img:"top_img05.jpg"}
,{url:"アドレスF",alt:"F",img:"top_img06.jpg"}
,{url:"アドレスG",alt:"G",img:"top_img07.jpg"}
,{url:"アドレスH",alt:"H",img:"top_img08.jpg"}
];
jumpURL.shuffle=shuffle;
jumpURL.shuffle();
function shuffle(){
var temp=0;
for(var i=0;i<this.length -1 ;i++){
var num=Math.floor(Math.random()*(this.length-i));
temp=this[i];
this[i]=this[num+i];
this[num+i]=temp;
}
}
</script>
</head>
<body>
<script>
for(var i=0;i<5;i++){
document.write("<a href='"+jumpURL[i].url+"'><img src='"+jumpURL[i].img+"' alt='"+jumpURL[i].alt+"' border='0'></a><br>");
}
</script>
</body>
No.2
- 回答日時:
<html>
<body>
<script>
var url =[
'http://www.0', 'http://www.1','http://www.2', 'http://www.3',
'http://www.4', 'http://www.5', 'http://www.6', 'http://www.7'
];
var imgfile =[
'img0.gif','img1.jpg','img2.jpg','img3.jpg',
'img4.jpg','img5.jpg','img6.jpg','img7.jpg'
];
var n=5;
var n2=imgfile.length;
for(var i=0,f=[],bf=[];i<n;i++) {
while(f[rd=Math.random()*n2|0]); f[rd]=1;
document.write('<img src="'+imgfile[rd]+'" alt="'+imgfile[rd]+'" onClick="location.href=\''+url[rd]+'\'"><br>');
}
</script>
</body></html>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- HTML・CSS CSSのホバーエフェクト 1 2023/06/19 06:53
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- JavaScript jQueryで同じクラス名のものを別物として扱いたい 1 2022/06/17 14:14
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
- Perl 画像が表示でnull; this.src 1 2022/04/19 11:31
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- HTML・CSS FC2カートのテンプレートでの商品表示について 1 2023/03/02 18:05
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JavaScriptで変更した属性の元...
-
【OpenCV】二値画像後、白の部...
-
MFCで画像を表示させているので...
-
imageクラスからiconクラスに変...
-
error LNK2019 未解決のシンボ...
-
(javascript)HTMLで指定した...
-
指定したフォルダの画像を一括...
-
jQuery 複数のfind()
-
複数画像のランダム複数表示(...
-
createElementによる空要素の生...
-
MAX関数を使ってからLEFT JOIN...
-
javascriptで毎月替わる画像
-
Slick.jsのオプションrtlについて
-
jQueryで、リンクURLの一致を確...
-
jQueryで同じクラス名のものを...
-
フッター上部に謎の隙間
-
アップロードファイルの種類に...
-
HTMLで条件分岐はできますか?
-
大分類・中分類・小分類
-
HTMLですCSSです 画像のように...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JavaScriptで変更した属性の元...
-
MFCで画像を表示させているので...
-
画像が表示でnull; this.src
-
error LNK2019 未解決のシンボ...
-
(javascript)HTMLで指定した...
-
外部javascriptの重複を防ぐには
-
libjpegライブラリの使い方につ...
-
Vb.net2005での画像の合成方法
-
外部ファイルにしたら文字化け...
-
jQuery 複数のfind()
-
HTMLからimgのsrcのみを正規表...
-
html内にスライドショーを複数設置
-
条件分岐でキーが入力されてい...
-
複数画像のランダム複数表示(...
-
ダイアログから画像ファイルは...
-
【OpenCV】二値画像後、白の部...
-
"lightbox"の"CLOSE"ボタンクリ...
-
onclickで画面が固まる・・・ら...
-
pythonで、tkinterとpillowの組...
-
imgボタンにfocusの当て方
おすすめ情報