$(document).ready(function(){
$('#commentform').submit(function(){
var postname = $('h2.post-title').text();
ga('send', 'event', 'Engagement', 'Comment', postname, 5);
});
});
首先。此代碼將h2
標記的文本與document
中的post-title
類別相關聯。一種更可靠的方式來獲得該職位的標題將是一個ID。
其次,它可能無法正常工作,因爲表單在Google Analitycs代碼觸發前被提交。因此,您應該停止默認行爲並在analitycs完成發送數據後提交表單。 (參見:https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced#hitCallback)
$(document).ready(function() {
$(document).on('submit', 'form#commentform', function(e) {
var postname = $('#post-title').text();
ga('send', {
'hitType': 'event',
'eventCategory': 'Engagement',
'eventAction': 'Comment',
'eventLabel': postname,
'eventValue': 5,
'hitCallback': function() {
//now you can submit the form
//$('#commentform').off('submit').trigger('submit');
$('#commentform').off('submit'); //unbind the event
$('#commentform')[0].submit(); //fire DOM element event, not jQuery event
}
});
return false;
});
});
編輯: 我才意識到從hitCallback
代碼可能無法正常工作。修改後的版本應該調用DOM元素的事件並在結果中發送表單。
EDIT2: 修正對象事件的情況下,結合時的document.ready()被觸發GA(...)後
回報虛假的形式不存在; – ElSinus 2013-04-23 12:01:33
你有什麼錯誤?什麼是問題?只是不工作? – 2013-04-23 12:03:04
我認爲問題在於頁面正在刷新 – 2013-04-23 12:04:39