2011-07-18 6 views
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' 
      }); 
     } 
    }); 

答えて

1

サイクルが一度も適用されていないにもかかわらず、初めてスルーします。おそらくあなたのエラーがどこから来ているのでしょうか。

とにかくこのようにするべきではありません。 Cycleはこの目的のために特別に機能するaddSlideを持っています。例を参照してください:

+0

うん。しかし、私はいくつかの画像を追加するのではなく、むしろ画像のリストを完全な新しいものに置き換えるので、スイートになるとは思っていませんでした。または、私はaddSlideをすべて間違っていましたか? – Xavio

+0

Ah。まあ、まだ、私は存在しないスライドショーで破壊を呼び出すことがあなたの問題だと思う。おそらく、初期化するときにスライドショーulにクラスを追加してから、そのクラスを破壊する前にそのクラスをチェックしてください。 –

+1

は[キャッシュされた選択](http:// jquery-howto)も使用しています。 .blogspot.com/2008/12/caching-in-jquery.html) – rtpHarry

関連する問題