2

我有一个iframe最初不包含视频的视频。当用户按下按钮时,将加载一个 Youtube 视频。为了检测 Youtube 视频何时完成加载,我on()用来检测 Youtube iframe 的 DOM 结构何时被修改。目前,当视频加载时,我在控制台中没有看到该Video Loaded消息。我的逻辑不正确吗?

<div id="button">BUTTON</div>

<div id="container">
    <iframe id="ytplayer" class="hide" type="text/html" width="840" height="470" 
    src="https://www.youtube.com/embed/" frameborder="0" allowfullscreen></iframe>
</div>

$(document).ready(function() {
    $('#button').click( function() {
        $('#ytplayer').attr('src', 'https://www.youtube.com/embed/w7bccxRvxDc?rel=0&showinfo=0');
    });  
    $('#container').on('DOMNodeInserted', '#ytplayer', function() {
        console.log('Video Loaded');
    });    
});
4

1 回答 1

3

您可能想看看YouTube iframe API。它支持很多事件,包括视频加载时间。该 API 得到官方支持,因此您无需支持自定义构建的代码,以防 Google 更改某些内容。

于 2013-03-07T01:44:00.780 回答