Вы можете указать пользовательскую функцию обратного вызова для объекта отслеживания.
_gaq.push(['_set', 'hitCallback', function(){}]);
Обратный вызов вызывается после "нажатия"успешно отправлен. "
Если вы хотите отследить нажатие на кнопку отправки и впоследствии отправить форму, вы можете использовать следующий код (использует jQuery) для вашего мероприятия:
var _this = this; // The form input element that was just clicked
_gaq.push(['_set','hitCallback',function() {
$(_this).parents('form').first().submit(); // Submit underlying form
}]);
_gaq.push(['_trackEvent', 'My category', 'My action']);
return !window._gat; // Ensure that the event is bubbled if GA is not loaded
Или как onclick
один вкладыш для вашего <input type="submit">
элемента:
onclick="var _this=this;_gaq.push(['_set','hitCallback',function(){$(_this).parents('form').first().submit();}]);_gaq.push(['_trackEvent','My category','My action']);return !window._gat;"
Для чего он отслеживает событие My category/My action
, использует jQuery для поиска базового элемента формы только что нажатой кнопки отправки, а затем отправляет всю форму.
См .: Google Analytics - Отправка данных в Google Analytics - Обратный вызов Hit (спасибо supervacuo)
ОБНОВЛЕНИЕ Если вы используете современный код analytics.js с определенной функцией ga (), вы можете написать это следующим образом:
var _this = this;
ga('send', 'event', 'My category', 'My action', {
'hitCallback': function() {
$(_this).parents('form').first().submit();
}
});
return !window.ga;