채택완료

스크롤 영상제어 질문!!!

2023-02-01 (수) 17:29:08 1,569

-------------------------------------------------------------------------------------------------------

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', {
      videoId: 'Jh4QFaPmdss', // 영상 고유 주소
    }
  );
}

/* scroll event */
window.onload = function() {
  var wh = window.innerHeight;
  var htmlTop = document.querySelector('html').scrollTop;
  var youtubeTop = document.querySelector('#player').offsetTop;
  var youtubeBottom = youtubeTop + wh;
  var youtubeHeight = document.querySelector('#player').offsetHeight;

  window.addEventListener('scroll', function() {
    htmlTop = document.querySelector('html').scrollTop;
    var htmlBottom = wh + htmlTop;
    youtubeHeight = document.querySelector('#player').offsetHeight;

    if (htmlBottom > youtubeTop && htmlBottom < youtubeTop + wh + youtubeHeight) {
      // player.unMute();
      player.playVideo();
    } else {
      player.pauseVideo();
    }
  })
}

<div id="player"></div>  

-------------------------------------------------------------------------------------------------------

위 코드로 스크롤시 영상제어가 가능한데 한페이지에 2개일때는 어떤부분을 수정해야하는지 도움요청드립니다 ㅜㅜ

|

답변 1개 / 댓글 1개

채택된 답변
+20 포인트
2023-02-02 (목) 03:11:51

아이디를 바뀌서 새로운 객체 내지는 클래스를 만들어도 되지만 차라리 두개의 문서를 만들어 아이프레임 처리하는 것이 간명해 보이네요.

답변에 대한 댓글 1개

문서를 불러오는 방법으로 해봐야겠네요 감사합니다~

답변을 작성하려면 로그인이 필요합니다.