###前提・実現したいこと
youtube APIでスクロールしてウィンドウ内に動画が入った時に再生されるように開発しています。
Firefox,chrome,safariは問題なく動いているのですが、
IEだけ自動再生されないので、それを直したいです。
###発生している問題・エラーメッセージ
オブジェクトは'pauseVideo'プロパティまたはメソッドをサポートしていません。(IEのみ)
###該当のソースコード
<!--↓出力部分--> <div id="player_frame"><div id="player"></div></div> <script> var w = window.innerWidth ? window.innerWidth: $(window).width(); 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 ytPlayer; function onYouTubeIframeAPIReady() { ytPlayer = new YT.Player('player', { height: 540, width: 960, videoId: "_gkoc6dpTmc", playerVars: { rel:0, loop: 1, playlist: "_gkoc6dpTmc"// 再生する動画のリスト } }); } // スクロールイベント window.addEventListener("scroll", function() { // 画面内にプレイヤーがあるかを判定 if (window.scrollY < ytPlayer.getIframe().offsetTop && window.scrollY + window.screen.height > ytPlayer.getIframe().offsetTop + ytPlayer.getIframe().offsetHeight && w > 780) { // 動画再生 ytPlayer.playVideo(); } else { // 動画停止 ytPlayer.pauseVideo(); } }) </script>
###試したこと
pauseVideoをstopVideoにしたら動かなくなりました。
他の書き方があったらそっちに置き換えたら直るのかなと考えたのですが、方法を見つけられませんでした。
お手数おかけしますが、よろしくお願いいたします。
###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報
あなたの回答
tips
プレビュー