我写了一些搜索mp3音频文件url链接的音频抓取脚本,并将其网址加载到我的HTML audio
src
中。但是,我发现一些mp3网址无法正常工作,因此audio
无法执行load()
,因为音频文件首先无法使用。我查找了audio\video
html dom引用,但是我还没有找到任何有用的方法或属性,如果音频没有正确加载,它们会返回一个值。
说我有以下代码:
var url= $(data).find(".download_button a").attr('href');
$('source').attr("src", url);
$('#mp3').get(0).load();
$('#mp3').get(0).play();
例如,如果网址是这样的:http://www.7inchpunk.com/wp-content/upload1/01LetsGetRidOfNewYork.mp3。这是一个无法找到的网站。我无法if($('#mp3').get(0).load())
,因为load()
没有返回值。那么如何检查是否加载了音频文件?
答案 0 :(得分:1)
您可以挂钩源对象的onerror
事件:
var url = 'http://www.7inchpunk.com/wp-content/upload1/01LetsGetRidOfNewYork.mp3';
$('source').attr("src", url);
$('#mp3').get(0).load();
$('#mp3').get(0).play();
$('source').on('error', function () {
console.log('OOPS');
});