我正在使用jQuery动态编写<video>
对象,并运行 videojs 来初始化它们。播放视频后,有时当我尝试再次播放时,它就无法播放,从那时起,即使刷新页面后,也不会播放任何视频。每次,<video>
对象渲染,但视频只是不播放。没有任何内容写入控制台。似乎没有任何错误。重新启动 Chrome 可以解决问题,但只是暂时的。播放了几个视频后,问题又回来了。
我发现在 Chrome 中关闭其他选项卡确实可以解决问题,所以这似乎是某种内存问题。
我正在运行 Chrome 19.0.1084.46
最佳答案
您有多少个 video
标签?他们看起来怎么样?是否包括 preload='none'
属性?源视频都在服务器上吗?
我问是因为如果您在单个页面上有超过六个 video
标签指向同一个源服务器,那么您可能会遇到“连接饥饿”:
- Chrome 仅允许六个打开的连接到单个服务器(基于 URL 中的 DNS 名称)
- html5
video
标签的preload属性默认值为'auto'
- Chrome 的自动行为是预加载一些数据并保持连接打开,以便为视频提取更多数据
因此,如果单个页面上有超过六个视频标签指向单个服务器,则视频将无法播放。要解决此特定问题,请将 preload
属性设置为 'none'
关于html - 如果打开的选项卡过多,Chrome HTML5 视频将停止工作 - 内存问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10658654/