相关疑难解决方法(0)

Google Analytics异步:事件跟踪回调?

我希望使用事件跟踪来记录对另一个网站的特定链接类型的点击.我正在使用jQuery,我目前的代码是:

$('a.website').click(function(event) {
    var href = $(this).attr('href');
    try {
        _gaq.push(['_trackEvent', 'website', 'click', href]);
    } catch(err) {}
});
Run Code Online (Sandbox Code Playgroud)

然而,从其他网站看到引荐信息后,我也不敢相信这是准确跟踪点击,可能是因为_gaq.push是异步的,并请求的浏览器导航到URL之前尚未收到,并终止任何JavaScript的运行当前页面.

有没有办法检测到该_gaq.push功能是否已成功完成,所以我可以在记录事件使用event.preventDefault()document.location导航到该链接?

javascript jquery google-analytics event-tracking

13
推荐指数
2
解决办法
9600
查看次数

在表单提交上触发谷歌分析事件

我正在尝试将分析事件跟踪添加到onclick事件中,以便在表单上提交输入.

我尝试了多个不同的例子,并引用了几个不同的SO帖子来达到这一点.我可以让onclick提交表单或触发跟踪事件,但不能同时触发.

第一个例子:(将表单+日志提交到控制台,但不会触发事件)

<!-- Analytics tracking code -->

<form action="test.php" id="form" method="post">

    <input type="text" name="name" id="name">

    <!-- Submits form + logs to console but doesn't fire event -->

    <input type="submit" name="submit" value="Submit" onclick="
        var _this = this; 
        _gaq.push(
            ['_trackEvent', 'Forms', 'Submit', 'Home Contact'], 
            function() {
                console.log('submitting'); 
                $(_this).parents('form').submit();
            }
        );
    ">

</form>
Run Code Online (Sandbox Code Playgroud)

第二个例子:(触发事件+日志到控制台,但不提交表单)

<!-- Analytics tracking code -->

<form action="test.php" id="form" method="post">

    <input type="text" name="name" id="name">

    <!-- Fires event + logs to console but doesn't submit form -->

    <input …
Run Code Online (Sandbox Code Playgroud)

javascript jquery analytics google-analytics onclick

9
推荐指数
1
解决办法
4783
查看次数

确保在重定向前完成 Google Tag Manager 和 Google Analytics

我有一个指向我的网页的链接,我希望在将用户重定向到外部页面之前使用 Google Analytics 和 Google Tag Manager 跟踪用户。

我想确保在执行重定向之前完成 GA 和 GTM。最好的方法是什么?

一个简单的方法是使用 setTimeout。但是 1000 毫秒是太长还是太短?如果可以在跟踪实际完成时进行重定向,会更喜欢吗?。GTM 和 GA 跟踪是否在文档准备好之前完成?如果不能,这可以强制吗?

<html lang="sv">
<head>
<title></title>
<meta charset="utf-8"/>
<script src="~/Scripts/jquery-2.1.0.min.js"></script>
<!-- ANALYTICS CODE -->
</head>
<body>

<!-- TAG MANAGER CODE -->

<script language="javascript">
    $(function() {
        setTimeout(function() {
            window.location.replace("http://externalwebsite.com");
        },1000);
    });
</script>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

在 GTM 存储桶中,我有 Twitter 和 Facebook 再营销标签。

更新的解决方案

我已经更新了我的解决方案。因为我最感兴趣的是确保 GA 在重定向之前绝对触发,这会更好。

<html lang="sv">
<head>
    <title></title>
    <meta charset="utf-8"/>
    <script src="~/Scripts/jquery-2.1.0.min.js"></script>
    <script language="javascript">

        var redirect = function(waitFor) {
            return function(signal) {
                waitFor[signal] …
Run Code Online (Sandbox Code Playgroud)

javascript google-analytics google-tag-manager

6
推荐指数
1
解决办法
6603
查看次数