2012-05-18 30 views
0

正如你可以在我的网站上看到 http://www2.outofscopes.com/test/index.html的Youtube的JavaScript API onStateChange并不总是工作

我试图让YouTube API将告诉我,是onStateChange通过alarting任何事件。使用这个javascript:

 function onYouTubePlayerAPIReady() { 
     player = new YT.Player('player', { 
      videoId: '-cSFPIwMEq4', 
      events: { 
       'onStateChange': function (event) { 

        alert(event.data); 
       } 
      } 
     }); 
    } 

但在铬和Firefox(主要是Firefox)它只警告只有当重新加载页面时。

为什么会发生这种情况?

+0

不知道,但我觉得之前设定的功能,你需要等到帧负载。 – siniradam

+1

@siniradam设置功能之前你的意思是什么? –

回答

1

您可以试试这个。 http://jsfiddle.net/NrHdq/

 <iframe src="http://www.youtube.com/embed/-cSFPIwMEq4" onload="floaded()" title="YouTube video player" id="player" allowfullscreen="" frameborder="0" height="400" width="900"></iframe> 

<script> 
    //onYouTubePlayerAPIReady 
    function floaded() { 
     player = new YT.Player('player', { 
      videoId: '-cSFPIwMEq4', 
      events: { 
       'onStateChange': function (event) { 

        alert(event.data); 
       } 
      } 
     }); 
    } 

</script> 

</body>