5 ms·
Doing it client side has a couple issues. 1. you need to block the click event until you get a response from your analytics endpoint. Google suggests doing thi
by mwhooker 15y ago
Doing it client side has a couple issues.
1. you need to block the click event until you get a response from your analytics endpoint. Google suggests doing this by adding a 100ms delay: http://support.google.com/googleanalytics/bin/answer.py?hl=en&answer=55527 http://support.google.com/googleanalytics/bin/answer.py?hl=e...
2. you might get holes in your data for a number of reasons: the user has JS turned off; 100ms isn't long enough for the request to go through; or the user might click off before your script can attach itself to the onclick event.
You definitely don't want to get yourself in a situation where you go down and all outbound links stop working, but if you can fail gracefully, replacing the link makes a lot more sense.
- drivebyacct2 15y agoWhy does the delay matter? They have to wait for a response regardless of whether it's an AJAX request or a full browser redirect to the record/redirect URL.
- lazerwalker 15y agoNot to mention that your analytics code won't fire if the user opens a link by any means other than a standard left-click (e.g. middle-click, right-click -> open in new window/tab, or keyboard navigation)