1

我的页面动态启动几个 Vimeo iFrame 嵌入式视频之一,我正在使用 jQuery 将它们淡入/淡出并开始/停止。现在,我的关闭功能隐藏了视频并随后将其暂停。如果您在隐藏后显示相同的视频,它会从之前暂停的位置开始。我希望它重新启动。我想不出正确的行动。一些“停止”和“重启”不是选项(这是多么不合逻辑?播放/暂停/停止)。

我正在链接到 Vimeo 托管的 Froogaloop JS 版本并使用 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 回答