0

ここに私が現在持っているJavascriptがあります

<script type="text/javascript">
$(function() {
    $('.slideshow').hover(
        function() { $('.slides').cycle('resume'); },
        function() { $('.slides').cycle('pause'); }
    );

    $('.slides').cycle({
        fx:     'fade',
        speed:   .3,
        timeout: 280,
        next:   '#next',
        prev:   '#prev'
    }).cycle("pause");
});
</script>

できます; しかし問題は、ページ上のすべてのサムネイル セットで機能し、1 つの画像セットにマウスを合わせると、他のすべての画像セットも同様にループすることです。

これはクラスをターゲットにしているためだと思いますが、私のjQueryの経験は非常に限られているため、他のクラスに影響を与えずに各クラスの単一のインスタンスのみをターゲットにする方法がわかりません。各ページのサムネイルとビデオの量は、この Django テンプレートによって動的に決定されるためです。

http://pastebin.com/nf42bSAx

これは私のプロジェクト (オープン ソース メディア プラットフォーム) にとって不可欠であるため、どんな助けにも感謝します。

ありがとうございました。

4

1 に答える 1

1

現在のスライドショー内のスライドでのみサイクルを呼び出す必要があるため、次のように呼び出します。

$(".slideshow").each(function() {
    $(this).find(".slides").cycle({
        fx:     'fade',
        speed:   .3,
        timeout: 280,
        next:   '#next',
        prev:   '#prev'
    }).cycle("pause").end().hover(
        function() { $(this).find('.slides').cycle('resume'); },
        function() { $(this).find('.slides').cycle('pause'); }
    );
});

私は今日までこの関数を使用したことはありません (または聞いたことさえありません) が、論理的には、これはあなたがやりたいことを行うはずです。

于 2012-06-29T21:21:09.473 に答える