我有一個訓練計劃,我嘗試在 iFrame 中顯示 YouTube 視頻,自動播放它,并在視頻完成后前進到下一頁。我可以讓YouTube上IPFI就緒函數觸發,但其他事件都不會。實際上,我只對狀態變化感興趣。 var tag = document.createElement('script'); tag.src = 'https://www.youtube.com/iframe_api'; tag.id = 'apiScript'; var firstScriptTag = document.getElementsByTagName('script')[0]; firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);... //function onYouTubeIframeAPIReady() { //tried this too but no change window.onYouTubeIframeAPIReady = function() { player = new YT.Player('externalComponent', { events: { 'onReady': onPlayerReady, 'onError': onPlayerError, 'onStateChange': onPlayerStateChange } }); console.log('api ready'); } function onPlayerStateChange(event) { console.log('onStateChange'); console.log(YT.PlayerState); }當它運行時,您可以在控制臺中看到“api就緒”,但沒有其他內容。內聯框架如下所示: <iframe id="externalComponent" src="https://youtube.com/embed/_S_Bg9qfa8o?enablejsapi=1&controls=0&autoplay=1" width="1024" height="576" allow="autoplay" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>是什么阻止了 onState更改了工作狀態,而不是自動播放?控件不顯示。
YouTube JavaScript API, on狀態更改未觸發,無自動播放
泛舟湖上清波郎朗
2022-09-11 20:31:40