-
// 2. 이 코드는 Iframe Player API를 비동기적으로 로드한다. !!필수!! var tag = document.createElement('script'); tag.src = "https://www.youtube.com/iframe_api"; var firstScriptTag = document.getElementsByTagName('script')[0]; firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); // 3. API 코드를 다운로드 받은 다음에 <iframe>을 생성하는 기능 (youtube player도 더불어) var player; function onYouTubeIframeAPIReady() { player = new YT.Player('player', { width: '100%', //변경가능-영상 너비 videoId: 'aKdDz864DuI', //변경-영상ID playerVars: { 'rel': 0, //연관동영상 표시여부(0:표시안함) 'controls': 1, //플레이어 컨트롤러 표시여부(0:표시안함) 'autoplay': 1, //자동재생 여부(1:자동재생 함, mute와 함께 설정) 'mute': 1, //음소거여부(1:음소거 함) 'loop': 1, //반복재생여부(1:반복재생 함) 'playsinline': 1, //iOS환경에서 전체화면으로 재생하지 않게 'playlist': 'aKdDz864Duo' //재생할 영상 리스트 }, events: { 'onReady': onPlayerReady, //onReady 상태일 때 작동하는 function이름 'onStateChange': onPlayerStateChange //onStateChange 상태일 때 작동하는 function이름 } }); } // 4. API는 비디오 플레이어가 준비되면 아래의 function을 불러올 것이다. function onPlayerReady(event) { event.target.playVideo(); } // 5. API는 플레이어의 상태가 변화될 때 아래의 function을 불러올 것이다. // 이 function은 비디오가 재생되고 있을 때를 가르킨다.(state=1), // 플레이어는 6초 이상 재생되고 정지되어야 한다. var done = false; function onPlayerStateChange(event) { if (event.data == YT.PlayerState.PLAYING && !done) { // setTimeout(stopVideo, 6000); done = true; } } function stopVideo() { player.stopVideo(); }
<div class="video"> <div class="video-container"> </div> </div>
.video { width: 100%; } .video-container { position: relative; width: 100%; height: auto; padding-top: 50%; padding-bottom:74.99%; } .video-container iframe { z-index: 1; top: 0; left: 0; position: absolute; width: 100%; height: 100%; }
'🐶 etc > 2022기록' 카테고리의 다른 글
div 인라인 자바스크립트(history.go) (0) 2023.10.17 [20230629]tab js (0) 2023.06.29 [20230629]아코디언 js (0) 2023.06.29 [20230629]ES6 화살표(에로우) 함수,전개연산자(Spread Operator) (0) 2023.06.29 [20230628]ES6함수 백틱, var&let차이점, const (0) 2023.06.28 댓글