0
私はMike AlsupのCycle Pluginを試しました。私が構築しているページのためにライトと思われます。今でも、私は問題に遭遇しました。Jquery Cycle Plugin、コンテンツ変更時にスライダを更新、問題が発生しました。
私はCycleを画像のリストに適用しています。さて、私はプラグインを破棄して再適用しようとしましたが、成功しませんでした。私はスライダーを更新した後、画像を変更しようとするまで、罰金だ
<div id="display">
<a href="#" id="prev">Previous</a>
<a href="#" id="next">Next</a>
<div class="imgcontainer">
<ul id="slides">
> List of images to go into slideshow. <
</ul>
</div>
<div class="infocontainer">
<h2> Object title </h2>
<p> Object information </p>
</div>
</div>
すべて:
私は('destroy');
内容の変更をトリガーし、再びプラグインを適用します。
$('#slides').cycle('destroy');
$('#slides').cycle({
fx: 'fade',
speed: 'fast',
timeout: 0,
next: '#next',
prev: '#prev'
});
そして、これはに適用されます:
TypeError: 'null' is not an object (evaluating 'p.cycleTimeout')
全体ではjavascriptを。
$('#projects > li').click(function(){
var a = $(this);
$('#display .imgcontainer ul').html((a).children('ul.images').html());
$('#display .infocontainer h2').html((a).children('h2').html());
$('#display .infocontainer p').html((a).children('p').html());
if(!$(a).hasClass('sub'))
{
var title = $(this).attr('title');
$(a).siblings("[title='" + title + "']").toggle();
}
var imgcount = $('.imgcontainer li').size();
// Only apply plugin if there's more than one image in the list.
if(imgcount > 1)
{
$('#slides').cycle('destroy');
$('#slides').cycle({
fx: 'fade',
speed: 'fast',
timeout: 0,
next: '#next',
prev: '#prev'
});
}
});
うん。しかし、私はいくつかの画像を追加するのではなく、むしろ画像のリストを完全な新しいものに置き換えるので、スイートになるとは思っていませんでした。または、私はaddSlideをすべて間違っていましたか? – Xavio
Ah。まあ、まだ、私は存在しないスライドショーで破壊を呼び出すことがあなたの問題だと思う。おそらく、初期化するときにスライドショーulにクラスを追加してから、そのクラスを破壊する前にそのクラスをチェックしてください。 –
は[キャッシュされた選択](http:// jquery-howto)も使用しています。 .blogspot.com/2008/12/caching-in-jquery.html) – rtpHarry