firefox预加载所有html5媒体数据,但预加载=元数据

firefox预加载所有html5媒体数据,但预加载=元数据,html,firefox,html5-video,html5-audio,Html,Firefox,Html5 Video,Html5 Audio,首先,我是新来的,所以请原谅我的无知和可能的错误 我在firefox上遇到了一个奇怪的问题,我似乎无法解决这个问题 我已经使用php、html5和JavaScript为我的网站构建了一个html5媒体播放器。奇怪的是,Firefox(41)在缓冲和预加载媒体数据时表现出一些非常不一致的行为。Chromium、IE和Opera可以很好地完成这项工作,并且按照要求,只加载播放当前文件所需的所有元数据和媒体数据,并且以非常节省带宽的方式加载。只有Firefox表现出一些奇怪的行为。元数据可以很好地加载

首先,我是新来的,所以请原谅我的无知和可能的错误

我在firefox上遇到了一个奇怪的问题,我似乎无法解决这个问题

我已经使用php、html5和JavaScript为我的网站构建了一个html5媒体播放器。奇怪的是,Firefox(41)在缓冲和预加载媒体数据时表现出一些非常不一致的行为。Chromium、IE和Opera可以很好地完成这项工作,并且按照要求,只加载播放当前文件所需的所有元数据和媒体数据,并且以非常节省带宽的方式加载。只有Firefox表现出一些奇怪的行为。元数据可以很好地加载,但一旦调用play(),它就会以全速一次加载所有数据,这会导致流量非常大,并且无法及时获取所需的数据

您可以在这里查看:

例如: 我加载页面,然后点击一些播放列表项,它位于列表的最下方。现在FF开始加载所有数据,当然它从第一个项目开始,而较低项目的数据到达得很晚。这是非常恼人的,使播放器在较慢的连接上无法使用

现在我对此不是很确定,但我想html5将缓冲和缓存留给了浏览器——至少我还没有找到任何有用的文档,我如何操纵这种行为

因此,问题是: 当只需要特定的媒体文件时,如何防止FF加载所有媒体数据?我怎样才能让交通减速呢?无需加载全带宽的mp3

我想,为什么这个播放器不能在所有Safari浏览器上运行是另一个问题/线索

谢谢你的建议

克里斯

有趣的是,为了促成stackoverflow,他给了我一个可能的答案!:D

如果我使用另一种方法,即使用JS动态创建or元素,而不是一次将它们全部拉入HTML,则可以解决此问题。诀窍是从一个空的媒体列表开始,然后每次更改当前媒体时删除所有媒体标签,然后仅为下一个所需的媒体元素创建一个新的媒体标签。始终用新媒体元素替换旧媒体元素

这是又一次学习经验,发现删除/清空src属性会完全取消加载过程

不过,我还是很想听到更多有趣的想法!例如,如果您知道如何操纵浏览器的缓冲行为,我想听听……

有趣的是,为了促成stackoverflow,给了我一个可能的答案!:D

如果我使用另一种方法,即使用JS动态创建or元素,而不是一次将它们全部拉入HTML,则可以解决此问题。诀窍是从一个空的媒体列表开始,然后每次更改当前媒体时删除所有媒体标签,然后仅为下一个所需的媒体元素创建一个新的媒体标签。始终用新媒体元素替换旧媒体元素

这是又一次学习经验,发现删除/清空src属性会完全取消加载过程

不过,我还是很想听到更多有趣的想法!例如,如果您知道如何操纵浏览器的缓冲行为,我想听听