How To Track Clicks On Outbound Links
Solution 1:
Here's what I'm using, which has been working for me. I'm using jQuery to add the onclick handler to any link with a class of "referral", but I'd expect adding it directly in the HTML to work as well.
$(function() {
$('.referral').click(function() {
_gaq.push(['_trackEvent', 'Referral', 'Click', this.href]);
setTimeout('document.location = "' + this.href + '"', 100);
returnfalse;
});
});
edit: I believe your syntax for invoking a tracker by name is wrong. Since you aren't using a named tracker when you set up tracking at page load, you shouldn't try to name it later either. See the documentation for _gaq.push
.
More precisely:
- The
var myTracker
declaration is unused, so you can just delete that line. Variables declared within the scope ofrecordOutboundLink
aren't visible when other functions, such as_gaq.push
, are running, so it can't be relevant. - You should simply use
'_trackEvent'
instead of'myTracker._trackEvent'
.
Solution 2:
You can also try this automated external link script
Solution 3:
Set a longer timeout 2 seconds maybe, as it takes a certain amout of time for the _gaq.push
to actually push to the server, and 100 milliseconds isnt long enough for it to send (the push gets cancelled as soon as the document.location changes). Unless _gaq.push
uses a blocking call (doesnt execute the next line till the push is complete), but i dont think that is the case i think most of that uses asynchronous requests.
Post a Comment for "How To Track Clicks On Outbound Links"