首页 > 解决方案 > Vimeo api - 遍历页面上的多个视频

问题描述

这里是 JS、iframe 和Vimeo api的新手

我正在尝试使用这个想法来禁用对 WP 网站上某些视频的前向搜索。

它适用于单个视频,因为我知道 document.querySelector('iframe') 只会选择第一个 iframe。

但是,如果我有一页视频,我希望它可以处理多个特定视频。

在相关的 iframe 中,我添加了 class='noskip'

然后迭代我认为我可以这样做:

var noskips = document.querySelectorAll('.noskip');

for (var i = 0, len = noskips.length; i < len; i++) {
   }

但我不确定如何将每个 iframe 传递给实际的播放器函数:

var player = new Vimeo.Player(iframe);
var timeWatched = 0;


player.on("timeupdate", function(data) {
  if (data.seconds - 1 < timeWatched && data.seconds > timeWatched) {
    timeWatched = data.seconds;
           
  }
});

player.on("seeked", function(data) {
  if (timeWatched < data.seconds) {
    player.setCurrentTime(timeWatched);
  }
});

标签: javascriptvimeo-api

解决方案


好的,我想我解决了。欢迎提出改进建议!

var noskips = document.querySelectorAll('.noskip');
var iframes = Array.prototype.slice.call(noskips);

iframes.forEach(function(iframe) {

    var player = new Vimeo.Player(iframe);
    var timeWatched = 0;

    player.on("timeupdate", function(data) {
      if (data.seconds - 1 < timeWatched && data.seconds > timeWatched) {
        timeWatched = data.seconds;
      }
    });

    player.on("seeked", function(data) {
      if (timeWatched < data.seconds) {
        player.setCurrentTime(timeWatched);
      }
    });
    
});

推荐阅读