Jquery Supersizedプラグインを使用していて、使用する画像のリストを作成するためのより良い方法が必要でした。
私はここでこれと同じ質問を見つけましたjQuerySupersized:LIから画像をロードしますが、ソリューションの実装に問題があります。
私はこのような画像の名前を持つULを持っています:
<ul id="slide_list">
<li><div class="slide_src">pic1.jpg</div>
<div class="slide_head">head 1</div></li>
<li><div class="slide_src">pic2.jpg</div>
<div class="slide_head">head 2</div></li>
<li><div class="slide_src">pic3.jpg</div>
<div class="slide_head">head 3</div></li>
</ul>
次に、提供されているコードjfriend00を使用して、このリストから配列を作成します。
var slides = [];
$("ul .image").each(function() {
var this$ = $(this);
var obj = {};
obj.image = this$.text();
obj.title = this$.nextAll(".slide_src").text();
obj.thumb = this$.nextAll(".slide_head").text();
slides.push(obj);
});
私の問題は、このスライド配列を超大型のスクリプトで使用しようとすると、「「スライド」が未定義です」というエラーが表示されることです。
私の超大型コードは次のようになります:
jQuery(function($){
$.supersized({
//Functionality
slideshow : 1, //Slideshow on/off
autoplay : 1, //Slideshow starts playing automatically
start_slide : 1, //Start slide (0 is random)
random : 0, //Randomize slide order (Ignores start slide)
slide_interval : 5000, //Length between transitions
//Components
navigation : 0, //Slideshow controls on/off
thumbnail_navigation : 0, //Thumbnail navigation
slide_counter : 0, //Display slide numbers
slide_captions : 0, //Slide caption (Pull from "title" in slides array)
slides : slides
});
});
(簡潔にするために、特大のオプションコードの一部を削除しました)。
スライド配列の内容をコンソールに表示すると表示さ
[object Object],[object Object],[object Object]
れるので、何か間違ったことをしていることがわかります...
私がこれを使用する場合:
slidesDisp = JSON.stringify(slides)
配列はコンソールに完全に表示され
[{"image":"pic1.jpg","title":"head 1"},{"image":"pic2.jpg","title":"head 2"},{"image":"pic3.jpg","title":"head 3"}]
ますが、超大型のスクリプトで使用しても何も起こりません
slides: slidesDisp
私が間違っていることへの提案はありますか?