2012-09-26 2 views
3

내 웹 사이트에 일부 YouTube 비디오를 삽입했습니다. Google 애널리틱스를 사용하여 각 동영상의 조회수를 추적하고 싶지만 동영상이 iFrame을 사용하여 임베드되어 있기 때문에 어떤 onClick 이벤트도 잡을 수 없습니다. iFrame을 사용하여 내 웹 페이지에 삽입 된 YouTube 동영상의 조회수를 추적하려면 어떻게해야합니까?삽입 된 YouTube 동영상보기보기

답변

2

YouTube의 API를 사용하여 Google 애널리틱스에서 이벤트를 재생으로 추적했습니다. iFrame API과 javascript의 형식이 같습니다. 다른 기능을 추적하려면 iFrame API를보십시오. 이것은 내가 원래 event tracking information을 가지고있는 곳입니다.

당신은 아래의 동영상 ID 변경해야합니다 :

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

<script type="text/javascript"> 
    var tag = document.createElement('script'); 
    tag.src = "http://www.youtube.com/player_api"; 
    var firstScriptTag = document.getElementsByTagName('script')[0]; 
    firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); 
    var player; 

    function onYouTubePlayerAPIReady() { 
     player = new YT.Player('player', { 
      height: '390', 
      width: '640', 
      videoId: 'fYmrMt01S1U', 
      events: { 
       'onReady': onPlayerReady, 
       'onStateChange': onPlayerStateChange 
      } 
     }); 
    } 

    function onPlayerReady(event) { 
     /// event.target.playVideo(); 
    } 

    function onPlayerStateChange(event) { 
     if (event.data == YT.PlayerState.PLAYING) { 
      _gaq.push(['_trackEvent', 'Videos', 'Play', 
      player.getVideoUrl()]); 
     } 
     if (event.data == YT.PlayerState.PAUSED) { 
      _gaq.push(['_trackEvent', 'Videos', 'Paused', 
      player.getVideoUrl()]); 
     } 
     if (event.data == YT.PlayerState.ENDED) { 
      _gaq.push(['_trackEvent', 'Videos', 'Watch to End', 
      player.getVideoUrl()]); 
     } 
    } 
    // ]]> 
</script> 
+0

안녕하세요 조나단의 답장을 보내 주셔서 감사합니다, 나는 위의 구현되지만 마지막에 비디오로드/매우 느리게 프레임으로 프레임처럼 재생 . 나는 그것을 해결합니까? 어떤 아이디어? 당신도 똑같은 문제에 직면 했습니까? – bsae

+0

아무런 문제가 없었지만 자주 YouTube에로드 문제가 발생합니다. HD로로드하도록 설정할 수 있습니까? – PanAmericano

+0

다음과 같은 멋진 상자에서 열리는 동영상에 대해이 작업을 수행 할 수있는 방법이 있습니까? ? –

관련 문제