1

私のページは、いくつかのVimeo iFrame埋め込みビデオの1つを動的に起動し、jQueryを使用してそれらをフェードイン/フェードアウトおよび開始/停止しています。現在、閉じる機能はビデオを非表示にし、その後一時停止します。非表示にした後で同じ動画を表示すると、前に一時停止した場所から開始されます。再起動してほしいのですが。正しい行動がわかりません。いくつかの「停止」と「再開」はオプションではありません(それはどれほど非論理的ですか?再生/一時停止/停止)。

VimeoでホストされているバージョンのFroogaloopJSにリンクし、jQueryを使用して関数を呼び出しています。

ありがとう!

JavaScript:

$('#close, #underlay').click(function() {
    $('.vim, #close, #container, #underlay').fadeOut(400);
    var player=$f($('.vid:visible')[0]);
    player.api('pause');
});
4

3 に答える 3

2

フェードインしたら、次のように最初までビデオを探すことができます。

player.api("seekTo", 0);
player.play();
于 2011-04-10T19:17:45.400 に答える
1

完全に再起動するには、私は好きです

player.api('unload')

于 2016-03-28T15:54:41.440 に答える
0

私は、すべてのビデオを永続的にリセットしてから一時停止するソリューションを好みます。次に、表示されている現在のビデオを再生します。

以下のコードは最適化できますが、実際の欠点なしに作業を完了できます。

   function playCurrentVidPWA() {
      let allVids = document.getElementsByClassName('vimeo-player');
      let currentVideo = mySwiper.slides[mySwiper.activeIndex].querySelector('iframe');
   
      // Pause all videos
      if (allVids)
      {
         for (let i = 0; i < allVids.length; i++)
         {
            const iVid = allVids[i]
            let player = new Vimeo.Player(iVid);
            // Set the time of the video back to the begining
            player.setCurrentTime(0)
            // Pause the video for no frame-skip animations
            player.pause()
         }
      }
      // Play current slide video
      if(currentVideo)
      {
         let player = new Vimeo.Player(currentVideo);
         player.play()
      }
   }
于 2020-10-01T21:29:18.410 に答える