javascript - 如何在 svg 元素上播放 html 5 视频?

标签 javascript html css svg html5-video

我有一个六边形 svg 元素,里面有一个图像作为图案( worker 图片)。

<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="1400" height="1550" viewBox="0 0 140 155" class="svgMember memberPicLeft" id="erikSvg">
  <defs>
     <pattern id="svgImg" x="0" y="0" height="1" width="1">
       <image x="-10" y="-40" width="120%" height="160% xlink:href="assets/img/picture.jpg"></image>
     </pattern>
  </defs>
  <path fill="url(#svgImg)" 
    d="M69.999,153.831c-1.797,0-3.596-0.466-5.208-1.396L7.708,119.479c-3.222-1.861-5.208-5.3-5.208-9.021V44.542
    c0-3.721,1.986-7.159,5.208-9.021L64.791,2.564c1.612-0.93,3.411-1.396,5.208-1.396c1.799,0,3.598,0.466,5.209,1.396l57.083,32.957
    c3.224,1.861,5.21,5.3,5.21,9.021v65.916c0,3.721-1.986,7.159-5.21,9.021l-57.083,32.957
    C73.596,153.365,71.797,153.831,69.999,153.831z"/>
</svg>

我怎样才能将视频添加到 svg 元素,以便在悬停时视频将播放带有元素 (-webkit-mask-image) 的 mask :包含在元素边框中。 我试着只添加视频标签:

<video id="myVideo" autoplay>
   <source id="mp4_src" src="assets/video/video.mp4" type="video/mp4">
</video>

这当然行不通。没有在谷歌上找到任何解决方案。 感谢您的任何帮助!

最佳答案

SVG 不支持视频元素。我已经看到一些支持它的 Opera 和 Firefox 的实验版本,但常见的浏览器不支持。

您可以使用 HTML、CSS 和 Javascript 将视频附加为叠加层。

关于javascript - 如何在 svg 元素上播放 html 5 视频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30939323/

相关文章:

javascript - 使用 jquery 从多个下拉列表中删除重复项

javascript - 将 document.write(screen.height) 转换为 coldfusion 中的数字?

javascript - 从链接接收值

css - 您在 Web 元素中使用微格式吗?

css - 主div两侧的div,填充剩余空间

javascript - 系列悬停以突出显示边框颜色

javascript - 如何在页面加载后通过 jQuery 动态插入 &lt;script&gt; 标签?

html - 如何在 CSS 圆周围添加第二个边框

html - inline-flex Logo 会产生奇怪的不需要的填充(CodePen 内部)

javascript - 可滚动表排序 - 如何抑制水平滚动位置平移的伪影,以保持滚动位置?