如何将videojs控制栏移出视频区域或复制一个videojs控制栏?

huangapple go评论69阅读模式
英文:

How do I move the videojs control bar out of the video area or duplicate a videojs control bar?

问题

我使用了一个画布元素来对视频进行像素化处理,通过覆盖在视频上实现。但是画布元素会覆盖控制栏。所以是否有办法将控制栏移出视频区域,或者隐藏原始的控制栏并复制一个新的video.js控制栏?

如何将videojs控制栏移出视频区域或复制一个videojs控制栏?

视频区域内的控制栏](https://i.stack.imgur.com/ZykMJ.png)

顺便问一下,在前端实现视频像素化处理,这是否是最佳实践?

如何将videojs控制栏移出视频区域或复制一个videojs控制栏?

英文:

I used a canvas element to pixelate a video by covering it on the video. But the canvas element will cover the control bar. So is there a way to move the control bar out of the video area or hide the original one and duplicate a new videojs control bar?

如何将videojs控制栏移出视频区域或复制一个videojs控制栏?

control bar in the video area](https://i.stack.imgur.com/ZykMJ.png)

By the way, is this the best practice to pixelate a video in front end?

如何将videojs控制栏移出视频区域或复制一个videojs控制栏?

答案1

得分: 1

我会将属性 pointer-events: none 分配给 canvas,这样合并将无缝进行。

<canvas style="pointer-events:none">...

这样,您的 canvas 将仅作为过滤器,无法拦截点击或其他任何操作。

至于另一个问题,没有强制性的最佳做法,因为这有点主观,但对于更复杂的效果,这是一种常用的技巧。

编辑:这里有一个示例来移动自定义控制栏。
https://github.com/videojs/video.js/issues/2857

我进行了一些快速测试。您可以使用 CSS 来移动控制栏。

.vjs-control-bar
{
  position: relative;
  top: 300px;
}
英文:

I would assign the property pointer-events: none to the canvas so the merge will be seamless.

<canvas style="pointer-events:none">...

This way, your canvas will be just a filter, with no way of intercepting a click or anything else.

For the other question. No forcibly best practice as it's a bit subjective, however, for more complex effects, it is a used technic.


EDIT: There's an example here to move a custom control bar.
https://github.com/videojs/video.js/issues/2857


I did some quick tests. You can move the control bar with CSS

.vjs-control-bar
{
  position: relative;
  top: 300px;
}

huangapple
  • 本文由 发表于 2023年1月8日 21:45:16
  • 转载请务必保留本文链接:https://go.coder-hub.com/75048234.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定