Javascript jQuery关于未来媒体元素的函数
我经常使用jQuery的Javascript jQuery关于未来媒体元素的函数,javascript,jquery,html5-video,Javascript,Jquery,Html5 Video,我经常使用jQuery的on函数来处理将来的事件。例如: $(document).on('click', '.my-div', myHandler); 但是,我无法在我的视频标签上的播放或播放事件中使用此功能: $(document).on('playing', 'video', function() { console.log('video playing'); }); 以下操作很好,但不会绑定到将来的元素: $('video').on('playing', function() {
on
函数来处理将来的事件。例如:
$(document).on('click', '.my-div', myHandler);
但是,我无法在我的视频
标签上的播放
或播放
事件中使用此功能:
$(document).on('playing', 'video', function() {
console.log('video playing');
});
以下操作很好,但不会绑定到将来的元素:
$('video').on('playing', function() {
console.log('video playing');
});
jQuery未来的
on
函数的绑定语法是否只适用于某些事件,还是缺少对HTMLMediaElement对象事件的支持?我使用的是jQuery 1.11.2。它缺乏对不冒泡事件的支持,媒体事件不冒泡是因为它们在媒体元素之外的任何其他元素上都没有意义,而媒体元素,如
和
不能嵌套,因此没有必要让事件冒泡
它的工作方式是事件气泡,在单击事件上,它从您单击的元素开始,即事件.target
,并一直持续到文档级别
例如,单击锚点内的图像也会触发锚点
事件委派的工作方式是,它将事件处理程序附加到事件链更高的元素上,然后检查事件。目标
快速jQuery示例
$('#parent').on('click', function(e) {
if ( $(e.target).hasClass('child') ) func();
});
// is (somewhat) the same as
$('#parent').on('click', '.child', func);