HTML5视频播放器阻止搜索

时间:2010-10-22 23:26:54

标签: javascript html html5 html5-video

我正在创建一系列视频教程,并希望阻止用户寻找前进和跳过部分。我将使用将用于桌面和iPad浏览器的HTML5视频播放器。理想情况下,我也喜欢在iPhone上工作,但我发现你无法控制手机上的视频,因为它使用的是iPhone视频播放器。

如何阻止用户在HTML5视频播放器上前进?

6 个答案:

答案 0 :(得分:8)

Video.js的另一个例子:

List<MyObject> objects = await item.tables.ToAsyncEnumerable()
                               .Where(p => p.field1 == value)
                               .Select(p => new MyObject(p.field1,p.field2))
                               .ToList();

答案 1 :(得分:6)

我只是想阻止寻求前进。我的系统中有更多代码允许它们暂停并稍后返回。它记录当前位置并设置加载时的视频位置。

我正在使用video.js。我试图使用timechange事件,但在搜索之前它会触发。所以,我使用间隔来每秒抓住当前位置。如果搜索位置大于当前位置,则将其设置回来。效果很好。

var player = null;
var curpos = 0;
videojs("player").ready(function(){
  player = this;
});

player.on('seeking', function () {
  var ct = player.currentTime();
if(ct > curpos) {
  player.currentTime(curpos);
}
});

function getpos() {
  curpos = player.currentTime();
}
onesecond = setInterval('getpos()', 1000);

答案 2 :(得分:3)

如果你真的想做这个令人惊讶的用户敌对的事情,那么你可以使用controls属性。您必须使用JS实现您想要允许的任何控件。

当然,用户可以随时查看&gt; source 获取视频的URI并下载它。

答案 3 :(得分:1)

感谢您的回答Rick。

我注意到用户可以拖动并保持导引头,这样他们可以继续使用,所以我添加了不寻求getPos函数的地方.HTML 5和jQuery。

var video = document.getElementsByTagName('video')[0];

function allowMove() {
  $('input[id$="btnNext"]').removeAttr('disabled');
  $('input[id$="videoFlag"]').val("1");
}

function getpos() {
  if (!(video.seeking)) {
    curpos = video.currentTime;
  }
  console.log(curpos)
}
onesecond = setInterval('getpos()', 1000);

function setPos() {
  var ct = video.currentTime;
  if (ct > curpos) {
    video.currentTime = curpos;
  }
}

答案 4 :(得分:0)

我同意@Bart Kiers这不是一个好主意,但如果你必须这样做,我可以想到一种方法:隐藏控件并提供你自己的播放按钮,使用JavaScript启动视频。

答案 5 :(得分:0)

为什么不这样?

var video = document.getElementById("myVideo");
var counter = 0;

video.on('timeupdate', function() {
  if (video[0].paused == false) {
    counter = video[0].currentTime;
  }
}

video.on('seeking', function(e) {
  if ( parseInt(counter, 10) != parseInt(video[0].currentTime, 10) ) {
    video[0].currentTime = counter;
  }
});