我有一个表单,可以在确定提交时生成验证消息。
js脚本添加了一个类'wpcf7-mail-sent-ok'以显示正确的消息和呈现。
<div class="wpcf7-response-output wpcf7-display-none wpcf7-mail-sent-ok" style="display: block;">Votre message a bien été envoyé. Merci.</div>
我想听听这个js类的更改,以将ga跟踪与之关联
$('.wpcf7-response-output).(????APPEARENCE OF CLASS .wpcf7-mail-sent-ok'???)(function() {
_gaq.push(['_trackEvent', 'formulaire', 'devis_voyage', 'wpcf7-mail-sent-ok']);
});
最佳答案
您说您已经有作用于该div
的js,添加了该类。您为什么不能只在执行此操作的js代码中进行GA调用?那将是最好的地方。
因为选择基本上是继续寻找属性的变化。如果div已经存在,则有一个jQuery .watch() plugin会有所帮助。
如果div本身不存在,那么基本上您将必须编写一些代码来查找它,并将其包装在window.setInterval
或window.setTimeout
中以继续查找它,直到找到它为止。看起来像这样(未经测试):
function trackSubmit () {
if ( $('.wpcf7-response-output').length>0 ) {
_gaq.push(['_trackEvent', 'formulaire', 'devis_voyage', 'wpcf7-mail-sent-ok']);
} else {
window.setTimeout('trackSubmit',100);
}
}
// make the initial call to get the ball rolling. This should happen on page load, sometime after jQuery is loaded
trackSubmit();
尽管
.watch()
和trackSubmit()
解决方案都会影响页面的性能,所以我建议您尝试将GA调用移至已执行的js。
关于jquery - 使用jquery类更改监听器对表单验证消息进行ga跟踪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19400766/