如何知道歌曲的加载是否成功? 类似的东西:
video.load({
success : function() {
alert("loading successful");
},
failure : function() {
alert("loading not successful");
}
});
我有要播放的歌曲列表,如果突然出现互联网连接问题并且下一个视频无法播放,我想播放下一首已经连接过的歌曲。
非常感谢!
答案 0 :(得分:7)
这取决于您在加载视频时所谓的成功。能够完全播放视频是一回事,加载元数据是另一回事,每个都有事件。与失败相同:你会考虑很长一段时间来缓冲错误吗?
请参阅HTMLMediaElement触发的事件列表: https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement
至于听这些事件,这段代码可能会有所帮助:
var v = document.createElement("VIDEO");
v.addEventListener("error", function (e) {
console.log("Error while loading the video");
});
v.addEventListener("loadeddata", function () {
console.log("Video has started loading successfully!");
});
v.src = "http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4";
答案 1 :(得分:1)
您可以使用html5视频标记的error property(但此时似乎只是IE)。 另一种方法(对于FireFox)是HTML 5 Video Error handling in Gecko 2.0 (Firefox 4 / Thunderbird 3.3 / SeaMonkey 2.1)。
要检测所有子元素都无法加载,请检查media元素的networkState属性的值。如果这是HTMLMediaElement.NETWORK_NO_SOURCE,您知道所有源都无法加载。
希望这有帮助!