分析经典代码:hitCallback

时间:2013-10-13 12:54:50

标签: javascript google-analytics

我想使用分析来跟踪表单帖子。从我读到的东西,我明白我必须使用 hitCallback功能,否则事件跟踪器将无法完成跟踪事件。

问题是我使用的是经典GA代码(较新版本不支持 重新营销)不支持hitCallback功能。

还有其他办法吗?

以下是我要做的代码:

表单提交:

<input id="start1" type="submit" value="Send" onclick='return OnFormSubmit("1332","campaign: 12");' />

function OnFormSubmit(formIdentifier, label) {

  if (ValidateForm(formIdentifier)){
    _gaq.push(['_trackEvent', 'Registration', 'form submited', label, , false]);
    return true;
  } else {
    return false;
  }
}

function ValidateForm(formIdentifier) {
  // validating the form inputs. 
  return true;
}

1 个答案:

答案 0 :(得分:0)

这是一个错误。 hitCallback功能与传统的GA代码完美配合!

以下代码正常运行 - 我可以在GA上看到事件。

function OnFormSubmit(event, formIdentifier, formLabel) {

        event.preventDefault();

        if (ValidateForm(formIdentifier)) {

            $('#overlay').show();

            SendEmailToReferrer();

            //if analytics object exists
            if (window._gat) {
                optinForm = this;
                _gaq.push(['_set', 'hitCallback', function () {

                    SendForm();
                }]);

                _gaq.push(['_trackEvent', 'Registration', 'Form submited', formLabel, , false]);
            }
            else {

                SendForm();
            }
        }
    }


function SendForm() {
        var serial = '@Model.SerialId';

        if (serial.val == "") { serial = '-1'; }

        var formURL = '@regFormURL';
        $('#frm1').attr('action', formURL + '?SerialId=' + serial);

        document.regForm1.submit();
    }