我有一个使用Videojs的HTML5播放器。我想重写全屏按钮事件来做另外的事情。
我尝试使用JQuery重写click事件并使用preventDefault,如下所示:
$('.ico.fullsc').on('click', function(event){
event.preventDefault();
event.stopPropagation();
// My stuff
});
但是,除了执行我的代码之外,它仍然会执行全屏事件。有可能吗?
非常感谢您提前
答案 0 :(得分:3)
忘记video.js不使用jQuery来设置事件。我的坏!
要按照你想要的方式做到这一点,你将不得不变得有点傻,并用自己的克隆替换元素。
var fullscreenButton = $('.ico.fullsc').clone();
$('.ico.fullsc').replaceWith(fullscreenButton);
fullscreenButton.on('click', //etc
.clone()不会选择事件处理程序,但它确实保留了属性和内容,因此您获得了风格上等效的节点,但没有您不想要的事件处理程序。
还值得注意的是,您可以通过video.js添加和删除具有您自己功能的UI元素:https://github.com/videojs/video.js/blob/stable/docs/index.md#customizing