Javascript 视频源无效格式问题
如何针对无效的.mp4格式文件进行测试以隐藏相应的容器Javascript 视频源无效格式问题,javascript,jquery,Javascript,Jquery,如何针对无效的.mp4格式文件进行测试以隐藏相应的容器 <div id="video"> <video controls width="320" height="240"> <source src="<?php echo $row["username"]);?>" type="video/mp4"> </video> </div> 为什么不工作?因为您将ventListener添加到div
<div id="video">
<video controls width="320" height="240">
<source src="<?php echo $row["username"]);?>" type="video/mp4">
</video>
</div>
为什么不工作?因为您将ventListener添加到div,而不是视频标记的源
<div id="video">
<video controls="controls" width="320" height="240">
<source src="aaaa" type="video/mp4"/>
</video>
</div>
<script>
var v = document.querySelector('#video');
var sources = v.querySelectorAll('source');
if (sources.length !== 0) {
var lastSource = sources[sources.length-1];
lastSource.addEventListener('error', function() {
v.style.display="none";
});
}
</script>
var v=document.querySelector(“#video”);
var sources=v.querySelectorAll('source');
如果(sources.length!==0){
var lastSource=sources[sources.length-1];
lastSource.addEventListener('error',function(){
v、 style.display=“无”;
});
}
您可以使用:
可能的返回值为:
- 可能:指定的媒体类型似乎可以播放
- 可能:无法判断媒体类型是否可以在不播放的情况下播放
- “”(空字符串):指定的媒体类型肯定无法播放
相反,如果您需要
..当尝试加载或执行介质时出现某种形式的错误时,会发生这些事件
您的代码必须更改为:
$('#video source').on('error',function(e) {
片段:
var result=$('#video video').get(0).canPlayType($('#video video source').attr('type');
console.log('可以播放的第一个视频:'+结果);
$(“#视频源”)。关于('error',函数(e){
//
//这是为了检测错误的来源
//
$(“#视频”).toggle();
log('第一个视频源有错误…');
});
$('#newvideo source')。在('error',函数(e)上{
//
//这是为了检测错误的来源
//
$('#newvideo').toggle();
log('第二个视频源有错误…');
});代码>
第一段视频:没关系
第二个视频:它有一个无效的源
您的意思是捕获并处理来自视频元素的错误?您还需要执行文档。\u video.style.display=“none”
$('#video source').on('error',function(e) {