Javascript Google Analytics和_trackEvent:未记录到Analytics的事件
我拼凑了一些我在网上找到的关于跟踪分析中长文章页面上滚动距离的想法。我感兴趣的是,当用户在文章中达到一半时记录一个事件,然后在结束时再次记录。我的代码还不完美,因为它没有考虑页面上的时间,如果用户在页面加载后立即滚动到底会怎样?但是一旦我处理好这个问题,这是一个很容易解决的问题 在下面的代码中,两个console.log调用正在准确地跟踪它们应该在的时间,因此我的假设是_trackEvent调用也可以工作,但它们不能。不会抛出任何错误。它们永远不会出现在分析中 有人能看到任何明显的错误或漏洞吗?以下是我使用此代码的站点:Javascript Google Analytics和_trackEvent:未记录到Analytics的事件,javascript,google-analytics,Javascript,Google Analytics,我拼凑了一些我在网上找到的关于跟踪分析中长文章页面上滚动距离的想法。我感兴趣的是,当用户在文章中达到一半时记录一个事件,然后在结束时再次记录。我的代码还不完美,因为它没有考虑页面上的时间,如果用户在页面加载后立即滚动到底会怎样?但是一旦我处理好这个问题,这是一个很容易解决的问题 在下面的代码中,两个console.log调用正在准确地跟踪它们应该在的时间,因此我的假设是_trackEvent调用也可以工作,但它们不能。不会抛出任何错误。它们永远不会出现在分析中 有人能看到任何明显的错误或漏洞吗?
事实证明,这实际上可能是新GA中的一个bug。当我得到回复时,我会在这里作为评论进行汇报 后来
我从未收到关于这个问题的答案,但我的代码最终开始跟踪。后来我切换到“跟踪滚动深度”,它的工作绝对完美无瑕。@Brandon-这方面有什么更新吗?你说你会回来更新你的答案更详细?谢谢
$(document).ready(function() {
if ($(document.body).hasClass('single')) {
var doc_height = $(document).height(),
article_pos = $('#main > article').offset(),
article_height = $('#main > article').height(),
article_half = (article_height/2) + article_pos.top,
article_bottom = article_height + article_pos.top,
scrolled_half = Math.round(100 * article_half / doc_height),
scrolled_whole = Math.round(100 * article_bottom / doc_height);
$(window).scroll(function(){
var scrollPercent = GetScrollPercent();
if (!isScrolledHalf) {
if (scrollPercent > scrolled_half) {
isScrolledHalf = true;
console.log("Reached halfway mark!");
_gaq.push(['_trackEvent', 'Content Engagement', 'Scroll', 'Half']);
}
}
if (!isScrolledWhole) {
if (scrollPercent > scrolled_whole) {
isScrolledWhole = true;
console.log("Reached the end!");
_gaq.push(['_trackEvent', 'Content Engagement', 'Scroll', 'End']);
}
}
});
}
});
function GetScrollPercent(target){
var bottom = $(window).height() + $(window).scrollTop(),
height = $(document).height();
return Math.round(100 * bottom / height);
}