我正在尝试使用这两个简单的函数来检查 URL 是否包含音频或视频:
//For video
var video = document.createElement("video");
video.setAttribute("src", url);
video.addEventListener("canplay", function() {
console.log("video true");
});
video.addEventListener("error", function() {
console.log("video false");
});
//For audio
var audio = new Audio();
audio.setAttribute("src", url);
audio.addEventListener("canplay", function() {
console.log("audio true");
});
audio.addEventListener("error", function() {
console.log("audio false");
});
Run Code Online (Sandbox Code Playgroud)
问题是对于有效的音频和视频 URL,它们都返回 true,解决方案是什么?
小智 5
经过深入研究,我发现(在 HTML 中)音频实际上是没有尺寸的视频,因此您可以简单地使用它:
var video = document.createElement("video");
video.setAttribute("src", url);
video.addEventListener("canplay", function() {
console.log("video true");
console.log(video.videoHeight);
});
video.addEventListener("error", function() {
console.log("video false");
});
//audio => video true
// 0
//video => video true
// 1080
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3178 次 |
| 最近记录: |