我在一个也有 Google 表单的页面上有Optimizely ,我想在提交表单时跟踪事件。这大致是我现在拥有的代码:
window.optimizely = window.optimizely || [];
$('#ss-form').on('submit', function() {
window.optimizely.push(['trackEvent', 'submit']);
});
问题是它严重低估了实际发生的提交数量。
我能想出的唯一解释(Optimizely 支持也是如此)是大多数情况下,在优化跟踪代码完成运行之前,表单被提交并且下一页被加载。它必须在向 Google 发出表单 POST 请求之前向 Optimizely 发出请求,因此它的运行时间可能是不可忽略的。
如何确保在提交表单之前整个回调肯定会运行完成?
PS:Optimizely 支持提到这也可能与页面托管在一个域上并提交到另一个域(谷歌的)这一事实有关,但我不确定这是否与此有关。