我已經嘗試了JSFiddle,本地服務器和生產服務器,並且我無法弄清楚我的事件處理程序出了什麼問題。它永遠不會起火。此外,當我在谷歌瀏覽器上運行我沒有錯誤,當我在Safari上運行,我得到:YouTube API更改事件未觸發
封閉起源「http://www.youtube.com」的框架訪問與出身「http://jsfiddle.net」的框架。協議,域和端口必須匹配。
我錯過了什麼?
代碼:
<script src="http://www.youtube.com/player_api"></script>
<iframe
id="player"
width="426"
height="240"
src="http://www.youtube.com/embed/21eGxOKUxeM?enablejsapi=1&origin=*"
frameborder="0"
allowfullscreen></iframe>
<script>
function player_state_changed(state) {
alert('state changed');
}
document.getElementById('player').addEventListener(
'onStateChange', player_state_changed
);
</script>
我發現了這個問題。我會在一分鐘內回答。 – m59
嘗試解決方案提到[這裏](http://stackoverflow.com/questions/17078094/youtube-iframe-player-api-onstatechange-not-firing)。 –