
bgSwitcherを使用してフェードインアウトするスライドショーを作りました。
[A固定]→[Bランダム]→[Bランダム]→[C固定]
1枚目、4枚目は指定画像に差替え表示できていますが、
2枚目、3枚目が同じ画像を表示してしまい、繰り返し再生しても再度ランダムに選んでくれず、初めに読み込んだ画像のままでした。
【実現したいこと】
●imgBをランダム読み込みし、2枚目、3枚目で同じ画像が選ばれないようにしたい
●2巡目以降も、再生のたびにランダム処理を実施する
どなたか、上記のものが実現できるように出来ないものでしょうか。
どうぞよろしくお願いいたします。
<!DOCTYPE HTML>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title></title>
<script src="js/jquery.js" type="text/javascript"></script>
<script src="js/jquery.bgSwitcher.js" type="text/javascript"></script>
<script language="javascript">
<!--
// JavaScript Document
var imgA = ["images-top/A.jpg"],
imgC = ["images-top/C.jpg"];
imgB = new Array();
imgB[0] = "images-top/B1.jpg";
imgB[1] = "images-top/B2.jpg";
imgB[2] = "images-top/B3.jpg";
imgB[3] = "images-top/B4.jpg";
imgB[4] = "images-top/B5.jpg";
n = Math.floor(Math.random()*imgB.length);
jQuery(function($) {
$('#bgSwitch-fadeOut').bgSwitcher({
images: [imgA, imgB[n], imgB[n], imgC],
interval: 1000,
fadeSpeed: 1000,
}, true);
})
-->
</script>
<style type="text/css">
.bg {
width: 160px;
height: 160px;
padding: 20px;
line-height: 1.6;
}
</style>
</head>
<body>
<div>
<div id="bgSwitch-fadeOut" class="bg">
<p>テキスト</p>
</div>
</div>
</body>
</html>
No.1ベストアンサー
- 回答日時:
こんにちは。
>●imgBをランダム読み込みし、2枚目、3枚目で同じ画像が選ばれないようにしたい
これについては最初渡すときのランダム変数が同じなのが原因ですので
var n1 = Math.floor(Math.random()*imgB.length);
while ( true ) {
var n2 = Math.floor(Math.random()*imgB.length);
// n1とn2がちがっていればループ終了 同じの場合はもう一度ランダム実行
if ( n1 != n2 )
break;
}
var ctrl = $('#test').bgSwitcher ({
images : [ imgA, imgB[n1], imgB[n2], imgC ],
interval : 1000,
fadeSpeed : 1000,
},true ).data('bgSwitcher');
にすれば違う画像が表示されます。
>●2巡目以降も、再生のたびにランダム処理を実施する
についてはjquery.bgWeitcher.jsというプラグインをカスタマイズする必要があります。
プラグインの中を見ましたが現状は最初に渡された画像のみを使用し、途中で画像を書き換えることを考慮していないようです。
早々にご回答頂きましてありがとうございます。大変感謝感激です!
振り分けのほうだけでも分かって本当に嬉しいです。
リピートのほうについては、別プラグインを探してみようと思います。
ほんとうにどうもありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
nyroModal HEADタグ内の記述に...
-
Base64に変換したHTMLの<script...
-
アコーディオンとロールアップ...
-
<a href="#" …>の意味を教えて...
-
プルダウンと入力を両方行う検...
-
ウインドウの後ろに隠れている...
-
別ファイルのfunctionの読み込み方
-
SQLのWHEREで全てを質問する方法
-
bodyにidをつける理由は何ですか?
-
外部.jsの内容を一部置き換えて...
-
SCRIPT5007: 未定義または NULL...
-
javascriptについて
-
<aタグで変数に文字を代入
-
openerの関係が崩れてしまった...
-
クリックすると別の文章を表示する
-
JavaScriptからVBScriptの呼び...
-
jQuery ツールチップの中のリンク
-
別ページのインラインフレーム...
-
javascriptでtableの該当行を削...
-
cssにjavascriptを入れる?呼び...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
サイトにアクセスした際、数秒...
-
jqueryプラグインの設置方法
-
javascriptの中でjavascriptを...
-
教えてください! lightboxとsk...
-
liteboxと滑らかスクロールが同...
-
補足です。
-
マウスオーバー+クリカブルマッ...
-
<head>外での、外部css、外部js...
-
jQuery UIのdraggableについて
-
base64encodeでの文字化けについて
-
document.lastChild.appendChil...
-
HTMLに記載したいjavascript
-
jQuery.lightpop.jsの動作について
-
Camera slideshowの使い方について
-
ライブラリについて
-
jqueryのcolorboxを読込直後に...
-
CrossSlideのスライドショーが...
-
thickboxで画像ギャラリーが表...
-
noscript内にlinkは間違い?
-
wordpressでJavascriptのフラッ...
おすすめ情報