1

flexslider を使用して一連の写真を表示しています。Ajax を介して、定期的に 30 秒ごとに新しいスライド セットを取得します。addSlide()flexslider 内のスライド セットの更新は、 andを使用して多かれ少なかれ問題なく実行できremoveSlide()ますが、副作用が伴います。

1) currentSlideflexslider の変数が最後のスライドを超えて進みます。これらのスライドは存在しないため、空のスライドが表示されます。そこで、currentSlideポインターをループする修復コードをいくつか追加しました。

current = slider.currentSlide;
...slider.addSlide(...);
...slider.removeSlide(...);
slider.currentSlide = current < slider.count ? current : slider.count - 1;

これは問題を解決しますが、かなり醜いです。

2) 次の課題は、スライドの更新中に flexslider の管理がめちゃくちゃになることです。これにより、スライドの順序が変更され(私はそれで十分です)、スライドの数が不規則になり、スライドの方向が逆になり、空のスライドが表示されます。
テストとして、「after」イベントでコードをトリガーしました。

after : function(slider) {updateImages(slider)}

潜在的な競合状態を回避するために、しかし残念ながら、これは状況を改善しませんでした.

slider.flexslider("pause")3)およびslider.flexslider("start")メソッドを使用して、更新中に flexslider ショーを停止および開始しようとしました。残念ながら、これは役に立ちません。

私は何か完全に間違ったことをしていて、非常に本質的なことを忘れているような印象を受けます. 誰かが手がかりを持っていますか?

4

0 に答える 0