Javascript 我如何检查“是否”;“canplaythrough”;这是真的吗?
如果有人点击播放按钮,我想显示一个指示器。如果视频已加载,我想隐藏预加载程序。这与readystate完美配合:Javascript 我如何检查“是否”;“canplaythrough”;这是真的吗?,javascript,html5-video,Javascript,Html5 Video,如果有人点击播放按钮,我想显示一个指示器。如果视频已加载,我想隐藏预加载程序。这与readystate完美配合: var einleitung = document.getElementById('einleitung'); video.addEventListener('play', function () { if ( video.readyState === 4 ) { myApp
var einleitung = document.getElementById('einleitung');
video.addEventListener('play', function () {
if ( video.readyState === 4 ) {
myApp.hidePreloader();
} else {
myApp.showPreloader('Loading...');
}
});
我怎样才能用canplaythrough而不是readyState来处理这个问题
像这样的事情是行不通的:
if ( video.canplaythrough == true ) {}
video.canplaythrough为“null”
canplaythrough
是一个事件
,不属于音频/视频
元素的属性
此事件在音频/视频
元素的生命周期内仅触发一次,如果该元素完全缓冲
,并且可以在没有任何错误的情况下播放
/停止
,除非该元素的src
应该是这样的:
audio|video.addEventListener("canplaythrough", function(){//your code});
是的,谢谢。问题是,当我使用它时,第一次单击play就可以很好地工作。但是,如果我点击暂停,然后再次播放,预加载程序不会再次关闭。我认为在这种情况下事件不会发生。好的,谢谢你的解释。这意味着,唯一的选择是使用readyState获取当前状态?您需要处理
播放
和暂停
事件!