Javascript YouTube onPlayerReady从未被触发
知道这个脚本为什么不起作用吗?我只想跟踪Javascript YouTube onPlayerReady从未被触发,javascript,youtube,Javascript,Youtube,知道这个脚本为什么不起作用吗?我只想跟踪onStateChanged事件,但这也从未调用过 当我用下面的代码打开html文档时,我没有错误,youtube脚本加载得很好,播放器对象不是未定义的,看起来也很好 $(document).ready(function(){ loadScript(); }); function loadScript() { var tag = document.createElement('script'); tag.s
onStateChanged
事件,但这也从未调用过
当我用下面的代码打开html文档时,我没有错误,youtube脚本加载得很好,播放器对象不是未定义的,看起来也很好
$(document).ready(function(){
loadScript();
});
function loadScript() {
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
}
var player;
function onYouTubeIframeAPIReady() {
player = new YT.Player('player', {
events: {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange
}
});
alert(player);
}
var done = false;
function onPlayerStateChange(event) {
alert('state changed');
if (event.data == YT.PlayerState.PLAYING && !done) {
setTimeout(stopVideo, 3000);
done = true;
}
}
function stopVideo() {
player.stopVideo();
}
function onPlayerReady(event) {
event.target.playVideo();
}
我的iframe
:
<iframe id="player width="400" height="300" src="https://www.youtube.com/embed/j0pJekWgeFE" frameborder="0" allowfullscreen></iframe>
我在这里找到了答案:
我的解决方案不起作用的原因是,我的iframe
缺少一个属性:enablejsapi=“1”
,而且我在YouTube视频url中缺少:?enablejsapi=1
您可以在这里找到有效的解决方案:您是否尝试过像window.onyoutubeiframeapiredy(){(…)}
那样声明它?