Video.js - 阻止点击播放功能

时间:2013-04-18 12:33:13

标签: html5 html5-video video.js

我正在使用video.js将视频嵌入到HTML页面中。它将被用作仅限ipad的网络应用程序,因此我相信它使用的是原生HTML5播放器。我正在尝试禁用点击播放功能(以便用户必须使用控件)但我无法这样做。

我已经尝试从视频/视频播放器/海报中取消绑定点击事件(使用jQuery),我尝试使用addevent将e.preventDefault()添加到视频中,但这似乎都不起作用。

聚苯乙烯。我发现couple of posts说你可以在代码中注明一行,但我的版本中不存在这一行 - 也许该插件已被重写。

4 个答案:

答案 0 :(得分:4)

点击这里

https://github.com/videojs/video.js/blob/master/docs/api/vjs.MediaTechController.md#removecontrolslisteners

所以例如

v = videojs('scene04-video');
v.tech.removeControlsListeners();

答案 1 :(得分:2)

了解您正在使用的版本会很有帮助。这适用于4.1(最新的api)

// Disable big-play-button
videojs.Player.prototype.options_.children.bigPlayButton = false;

// Override click handler on media object;
videojs.MediaTechController.prototype.onClick = function() {};

// Initialize video
var vid = videojs("video", {});

// Show controls (since in my browser it doesn't think it needs to inititally)
vid.controlBar.show();

更新:我应该澄清一下,上面只能使用dev.js API(而不是prod / minified版本)。在缩小版本中,MediaTechController的onClick函数名称未保留,您无法可靠地覆盖它。在这种情况下,您可以尝试手动断开HTML5和Flash点击事件:

videojs.Html5.off('click');
videojs.Flash.off('click');

var vid = videojs("video", {}, function() {
  this.bigPlayButton.hide();
});

// Again - show the controlbar (optionally)
vid.controlBar.show();

答案 2 :(得分:2)

你可以试试这个。它帮助了我。只需将其添加到css文件:

var baseUrl = 'http://localhost:8080';
$http
.post(baseUrl + '/api/login/post', null, { 
    email: $scope.mapp_login_email, 
    password: $scope.mapp_login_password 
})
.then(function successCallback(response) {
    // on success
    console.log(response);
}, function errorCallback(response) {
    // on error
    console.log(response);
});

答案 3 :(得分:0)

检查:

Z