js通过视频链接获取视频时长
这个函数用提供的URL创建一个新的Video元素,并在loadedmetadata事件被触发时解析一个带有视频持续时间的Promise。它还处理可能发生的任何错误。
注意,Video元素的duration属性是以秒为单位的,因此如果需要,您可能希望将其转换为更易于阅读的格式。
function getVideoDuration(url) {return new Promise((resolve, reject) => {const video = document.createElement('video');video.src = url;video.addEventListener('loadedmetadata', () => {resolve(video.duration);video.remove();});video.addEventListener('error', () => {resolve(null);video.remove();});document.body.appendChild(video);});
}// Example usage
const videoUrl = 'https://www.example.com/video.mp4';
getVideoDuration(videoUrl).then((duration) => {if (duration) {console.log('Video duration:', duration);} else {console.log('Failed to get video duration');}});