video.js 字幕无法加载

video.js Subtitles won't load

我刚刚下载了开源视频播放器 Video.js 并在 Chrome 和 IE 中打开了演示,但两个字幕都无法播放。

源文件:http://www.videojs.com/

我没有做任何更改,这是我在 Chrome 中阅读控制台时遇到的错误:

Text track from origin 'file://' has been blocked from loading: Not at same origin as the document, and parent of track element does not have a 'crossorigin' attribute. Origin 'null' is therefore not allowed access.

这在 Chrome 中发生,但在 Firefox 中没有,这是由于同源策略:

您必须双击演示文件,导致在您的默认浏览器(似乎是 Chrome)中使用 file:// 协议打开 demo.html 文件。由于使用http://协议给浏览器获取字幕的命令,浏览器拒绝获取。

因此您可以:

  • 将所有文件放在网络服务器中(在实时服务器上使用节点和浏览器同步非常容易,但您也可以轻松地使用 apache 或 nginx)然后就完成了
  • 下载字幕,把文件放在同一个目录,把HTML改成从demo.html
  • 指向它的相对路径