2011-03-18 2 views
1

새 창에서 링크를 여는 데 작지만 성가신 문제가 있습니다. 사이트를 구축했으며 Google 웹 로그 분석 추적이 설치되어 있습니다. 나는 이벤트로 외부 사이트에 클릭 스루를 추적하고 올바른 모든 트랙을 올바르게 넣었습니다. 각 링크에 대해 target="_blank"에 넣었습니다. 그러나 어떤 이유로 링크가 새 창에서 열리지 않습니다! 내가 잘못하고있는 것이 있습니까? 아래 코드 :올바른 코드를 사용해도 새 창에서 링크가 열리지 않습니다!

<a onclick="recordOutboundLink(this, 'Outbound Links', 'Link');return false;" href="http://www.mylink.com" target="_blank">Myink</a></span></li>

은에서의 순서와 함께 할 그 무언가인가? 나는 그걸 작동시킬 수없는 것 같아!

미리 감사드립니다.

<script type="text/javascript"> 
function recordOutboundLink(link, category, action) { 
    try { 
    var pageTracker=_gat._getTracker("UA-XXXXXX-XX"); 
    pageTracker._trackEvent(category, action); 
    setTimeout('document.location = "' + link.href + '"', 100) 
    }catch(err){} 
} 

+0

동일한 탭에서 열리십니까? – Kyle

+0

예 ... 새로운 창에서 열어야합니다! – zik

+0

링크 기록 용 코드를 붙여 주실 수 있습니까? –

답변

2

문제는 당신 recordOutboundLink 기능을 대신 그냥 기본 동작의 수행 링크를시키는의 리디렉션 자바 스크립트를 사용하고 있습니다 :

여기 요청으로

은 링크를 기록하는 코드입니다. 새 페이지가로드되기 전에 데이터가 GA로 전송되었는지 확인하기 위해 시간 제한을 사용하기 때문에 링크가 동일한 탭/창에서 열리도록하려면 올바른 동작입니다. '

<a onclick="recordOutboundLink(this, 'Outbound Links', 'Link')" href="http://www.mylink.com" target="_blank">Myink</a> 
+0

대단히 감사합니다. 나는 이것을 시험해 보았고 효과가있는 것 같다. 내가 GA를 통해 더 많은 데이터를 보게되면 내일 더 알게 될 것입니다! – zik

+0

새 창에서 창을 열 때 기존 창을 열어두기 때문에 GA 실행을 일시 중지하지 않아도되므로 사용자가 탐색하는 동안 문제없이 JavaScript를 계속 처리 할 수 ​​있습니다. 새 창으로 실제로는 target = "_ blank"가 기본 동작의 실행을 방해하지 않으므로 작업을 더 쉽고 어렵게 만듭니다. – Yahel

+0

좋은 지적 - 그것에 대해 생각조차하지 못했습니다! – zik

0

document.location 당신을 의미합니다 : 그것은 정상적인 동작의 수행 또한 링크를 중지 코드의 return false 비트를 제거해야

<script type="text/javascript"> 
     function recordOutboundLink(link, category, action) { 
      try { 
       var pageTracker=_gat._getTracker("UA-XXXXXX-XX"); 
       pageTracker._trackEvent(category, action); 
      }catch(err){} 
     } 
    </script> 

: 다음과 같은 기능을 사용할 필요가 작동 코드를 얻으려면 현재 페이지 URL을 다른 페이지 URL로 다시 변경합니다. 또한 return false 문을 사용하고 있습니다. 즉, 링크와 연결된 기본 이벤트를 방지하고 있습니다. 따라서 귀하의 target="_blank" 인수는 확인되지 않습니다.

document.locationreturn false 문을 제거해야합니다. 그러면 링크가 원하는대로 작동 할 수 있습니다.

관련 문제