0

FLOWPLAYER を使用しています。プレイリストはありますが、プレイリスト プラグインは使用していません。PREV/NEXT ボタンがあるので、互いにナビゲートできます。

デモ :: http://baazooka.com/_ext/flowplayer/index.html

    $("#clips a").each(function(index){

    $("#next").click(function(){
    var nex = $("#clips a").next().attr('href');
          $f().play(nex);
          return false;
   });
   $("#previous").click(function(){
    var pre = $("#clips a").prev().attr('href');
          $f().play(pre);
          //return false;
   });

});

しかし、それは一度しか機能しません。#next と #previous の値は同じ値を保持します。増減しません。

以下でこれを見つけましたが、まだ機能しません。動画をスキップします...

   var link = $("#clips a");

link.each(function(i){ $("#next").click(function(){ var nex = link.eq(i+1).attr('href'); $f().play(nex ); false を返す; }); $("#previous").click(function(){ var pre = link.eq(i-1).attr('href'); $f().play(pre) ; false を返す; });

4

2 に答える 2

1

私はあなたが何を望んでいるかを完全に理解しているかどうかわかりません。何らかの理由でそこにループがあると思います。しかし、あなたが代わりにループしている現在のリンクインスタンスを参照したいと思っていると思います$("#clips a")- これはイテレータではありません。

$("#clips a").each(function(index){
    var link = $(this);

    $("#next").click(function(){
    var nex = link.next().attr('href');
          $f().play(nex);
          return false;
   });

   $("#previous").click(function(){
    var pre = link.prev().attr('href');
          $f().play(pre);
          //return false;
   });
});

再生中の要素でこれを行いたい場合は、「再生」クラスを指定し、そのクラスを持つリンクでのみ動作し$("#clips a.playing")ます。それらすべてをループする必要はありません。

于 2010-12-07T17:38:48.673 に答える
0
$("#clips a").each(function(index){
  $("#next").click(function(){
    var nex = $("#clips a.playing:first").next().attr('href');
    $f().play(nex);
    return false;
  });
  $("#previous").click(function(){
    var pre = $("#clips a.playing:first").prev().attr('href');
    $f().play(pre);
    return false;
  });
});

.playingすべてのリンクではなく、 を選択するだけです。

于 2010-12-07T17:38:18.767 に答える