레이어팝업 동영상게시판

레이어팝업 동영상게시판

QA

레이어팝업 동영상게시판

답변 1

본문

 

안녕하세요

음악감상용 유투브 게시판을 만드는 중인데 음악감상용이다보니 클릭하면 동영상레이어가 뜨면서 자동재생이 되도록 했습니다

익스에서는 문제없이 작동하는데 크롬에서는 게시판에 있는 모든 글의 동영상이 게시판 열리자마자 자동재생되네요

해결방법이 없을까요?

코드는 여러가지 게시판 참고했습니다.

 

<script>
</script>
  $(".popups").hide(); //2개 중복을 막기 위한 숨기기
  $("#notice_up"+i).show(); //보이기
 }
 function notice_down(){
  $(".popups").hide("blind", {direction: "horizontal"}, 1); //숨기기
 }
</script>​

 

 

   <!--팝업 뜨는 부분-->

   $v = "";
   $daumpot_limit = "";
   $mov_link = "";
   $img_content = "";
   $mov_link = $list[$i]['wr_1'];
   $youtube_url = parse_url($mov_link);
   parse_str($youtube_url['query']);
   ?>
    <div id="notice_up<?=$i?>" class="popups" style="position:absolute; top:50%; left:50%; width:680px; height:450px; margin-top:-225px; margin-left:-340px; background-color:#000; border:1px solid #e9e9e9; display:none; cursor:pointer; color:#fff;" onclick="notice_down();" title="닫기">
     <div style="text-align:center;font-size:;width:660px;height:30px;padding:20px 10px 0px 10px;">
      <!--<marquee scrollamount="4" direction="left" behavior="scroll" width="300px"></marquee>--><?php echo $list[$i]['subject'] ?>
     </div>
     <div style="text-align:center;width:650px;height:370px;padding:15px;overflow-y:auto;">
      <?if ($list[$i]['wr_1']!="") {?><iframe width="640" height="360" src="//www.youtube.com/embed/<?php echo $v; ?>?feature=player_detailpage&vq=hd720&autoplay=1" frameborder="0" allowfullscreen></iframe>
      <?}else{?>동영상이 등록되어 있지 않습니다.<?}?>
     </div>
    </div>
   <!--팝업 뜨는 부분-->

<?if ($list[$i]['wr_1']!="") {?> <a href="javascript:void(0);" onclick="javascript:notice_up(<?=$i?>);"><img src="<?=$board_skin_url?>/img/icon_play.gif" border="0" title="재생" alt="재생"></a><?}?>

 

이 질문에 댓글 쓰기 :

답변 1

feature=player_detailpage&vq=hd720&autoplay=1
자동재생하라고 autoplay=1​ 설정이 되있군요. 0으로 넣어보세요.

 

자동재생을 해야합니다. 일부러 넣었어요; 문제는 게시판 list 페이지가 뜨자마자 제목을 클릭하지 않은 상태에서 게시되어있는 모든 글의 동영상이 재생돼서.. 페이지가 로딩됐을 때가 아니라 제목을 클릭해서 레이어팝업이 떳을 때 동영상 자체를 불러온다던가 클릭할 때 autoplay값에 1을 주고 끌 때 다시 0을 준다던가 이런식으로 해야할 것 같은데 페이지 로딩될 때 다 불러와서 그런지 값이 바뀌지 않더라구요..

'클릭하면' 창이 뜨면서 자동재생..인거를 원하셨겠지만 기본적으로 보이지만 않을뿐 로딩은 된 상태이므로 전부 자동재생 되는게 오히려 맞게 처리되고 있는거 같습니다.
저런경우는 차라리 iframe에 src값을 빼둔 상태를 기본으로 해두고 클릭시 함수에 $v값을 던져줘서 src값을 넣어주게 한다던지, src대신 data-src 같은 다른 속성이름으로 해놓고 클릭시 src속성에 data-src 값을 넣어준다던지 하면 되겠죠.
notice_down()에서는 마찬가지로 src를 다시 리셋시켜야겠죠.

후자의 방식으로 된 예입니다.
http://www.ktis.co.kr/v2/html/pr/clip.html
여기서는 웹접근성때문에 iframe에도 각각에 맞는 title과 자막을 넣어주느라 인수만 넘겨서 해당프레임과 레이어를 띄우지만 그런 이유가 아니라면 iframe도 하나만 만들어놓고 영상주소값만 함수로 던져서 처리하는게 깔끔하겠죠.

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 7
© SIRSOFT
현재 페이지 제일 처음으로