vue 检测链接是否为视频
时间: 2024-09-27 15:13:41 浏览: 29
在Vue.js中,检测链接是否为视频通常通过JavaScript的`typeof`操作符、正则表达式匹配或是HTML5的`<video>`元素特性来进行检查。这里有几个简单的方法:
1. **使用`typeof`**:
```javascript
function isVideoLink(url) {
const videoRegex = /^(https?:\/\/)?(www\.)?((优酷|腾讯|爱奇艺)\.com|vimeo\.com|youtube\.com)/(watch\?v=)|embed\/|v\/|vi\/|player\.html\?v=|video\/|clip\/|movie\/|playlist\?v=)([^"&]+)$/;
return typeof url === 'string' && videoRegex.test(url);
}
```
2. **使用正则表达式**:
此处假设常见的视频网站域名和视频链接结构。
3. **利用HTML5 `<video>`元素**:
可以尝试创建一个`<video>`元素并尝试加载链接,如果能成功播放就说明是视频。
```javascript
function isVideoLink(url) {
const videoElement = document.createElement('video');
try {
videoElement.src = url;
videoElement.autoplay = false; // 防止自动播放
if (videoElement.canPlayType('video/*')) {
return true;
}
} catch (err) {
// 如果出错可能是非视频链接
}
return false;
}
```
阅读全文