在html5video结束时执行function
我有一个HTMLvideo,我想在video结束时运行一个function。 我尝试了以下但我什么都没得到:
$(document).ready(function(){ $('video').live('ended',function(){ alert('video ended'); }); });
任何想法为什么这不会在video结束时触发? 或者我没有提供足够的信息来回答这里的任何问题?
注意:我使用live()函数而不是on()因为需要jQuery 1.7和这个项目。
为了您的粘贴和复制乐趣jQuery解决方案:
使用onended事件
var video = document.getElementsByTagName('video')[0]; video.onended = function(e) { alert('video ended'); }
阅读有关HTML5video和音频需要了解的所有内容
您可以尝试以下方法:
$(document).on('ended', 'video', function (e) { alert('video ended'); });
你说在加载DOM 之后动态插入video。 在此脚本中,您在DOM上搜索video
元素,并将其与已ended
函数绑定。
这是.on()的文档。
这是动态项目的SO问题。
我希望这有帮助!
我管理它的唯一方法是使用以下代码:
$('video')[0].on('ended',function(){ console.log('Video has ended!'); });
你可以在现场使用。 因为jquery新版本支持on方法,所以在新版本中不推荐使用live。
您可以将代码替换为此代码,您的问题将得到解决。
$(document).ready(function(){ $('video').on('ended',function(){ alert('video ended'); });
});