2012-09-11 3 views
0

나는 친구 스크립트를 통해 찾고 있었어요 그리고 그는 구글 웹 로그 분석 추적 코드 사용 :Google 웹 로그 분석 문제

var SOMEOBJECT = { 
    _gaq : [], 
    account_code : "", 

    ... 

    init : function() { 
     ... 
    } 

    ... 

    _gaq.push(SOMEOBJECT.account_code); 

    ... 
} 

좀 더 코드 : 이런 식으로 (또는 비슷한)에

var _gaq = [ 
     ['_setAccount', 'UA-XXXXXXXX-X'], 
     ['_trackPageview'] 
    ]; 
    (function(d, t) { 
     var g = d.createElement(t), 
      s = d.getElementsByTagName(t)[0]; 
     g.src = ('https:' == location.protocol ? '//ssl' : '//www') + '.google-analytics.com/ga.js'; 
     s.parentNode.insertBefore(g, s) 
    }(document, 'script')); 

을 동일한 추적 코드를 만들지 만 다른 방식으로 사용하십시오 (다른 많은 페이지 및 다양한 내용에 재사용해야하기 때문에).

범위 변수 _gaq이 콘솔에없는 것 같아 Analytics에서 데이터를받지 못했습니다. 그래서 무엇이 잘못 될 수 있습니까? 죄송합니다 더 많은 코드가 없지만 이것이 내가 기억하는 것입니다. 왜 작동하지 않는지 궁금하다. (

+0

나는이 질문을 이해하지 못한다. 당신은 무엇을하려고 노력하고 있습니까? – roel

+0

@roel ~이 시점에서 나는 무슨 일이 일어나고 있는지에 대해 많은 세부 사항을 알지 못한다. 나는 더 구체적 일 수 있도록 코드를 내 친구에게 보내야 할 것이다. 하지만 내가 가지고있는 것은'_gaq' 변수가 DOM에 존재하지 않는다는 것입니다. 콘솔에'._gaq'라고 입력하려고 시도해도 그것이 선언되지 않았던 것처럼 보입니다. 배열 대신 객체를 사용했다면 잘 동작하지만 '_gaq' 변수는 google Analytics 추적 코드 – Roland

답변

1

코드의 첫 부분은 정상적인 Google 웹 로그 분석 비동기 코드입니다.

내가 코드의 두 번째 부분에 대해 잘 모르겠어요 ... 일반적으로 _gaq는 전역 객체가있는 경우 배열 로 글로벌 _gaq를 초기화

var _gaq = _gaq || []; 

같은 것을 초기화 아직 초기화되지 않았습니다.. Onc Google 애널리틱스 코드가로드되면 배열은 명령어를 실행하는 push 메소드를 포함하는 객체로 대체됩니다.

the _gaq Global Objectpush 방법에 대한 문서를 살펴보십시오.

+0

~과 같이 배열이어야합니다. 정확하게 변수는 var _gaq = _gaq ||와 같이 초기화됩니다. [];'. 그러나 나는 왜 그가 그 문제에 문제가 있었는지 잘 모르겠다. 나는 이것을한다고 생각한다. _gaq : _gaq || []'그것은 가능하지 않거나 의미 상으로 정확하지 않습니까? – Roland

+1

문제는 두 가지 '_gaq'로 끝납니다 - 분석 코드에서 사용되는 전역 _gaq 및 SOMEOBJECT의 속성으로 정의 된 두 번째 _gaq. – mike

+0

그 소리는 ....이 경우 어떻게해야합니까? – Roland