2015-02-23 24 views
1

當表單提交併將用戶重定向到PDF文檔時,我正在開發跟蹤像素代碼。目前我沒有看到我的轉換指標上升,當我着陸PDF文件時,我在Safari中出現某種形式的錯誤,網絡跟蹤顯示爲紅色而非錯誤代碼。重定向到PDF時像素跟蹤代碼無法正常工作

這裏我我當前的代碼:

jQuery.noConflict(); 
(function($) { 
    $('form').on('submit', function($) { 
     try{ __pixel({"name": "tracker"}); } 
     catch (err) {} 
    }); 
})(jQuery); 

詩篇。我已經稍微調整了隱私的跟蹤代碼變量名稱。

我的假設是,在用戶重定向到PDF之前,像素未完全點燃。如果是這樣,我應該怎麼做呢?

任何幫助,將不勝感激。不知道這是否是我的方法。

回答

1

瀏覽器在實際觸發跟蹤命中之前離開頁面。您需要稍微延遲表單提交以解決此問題:

jQuery.noConflict(); 
(function($) { 
    $('form').on('submit', function(evt) { 
     evt.preventDefault(); 
     if (formIsValid) { 
     try{ __pixel({"name": "tracker"}); } 
     catch (err) {} 
     var form = this; 
     setTimeout(function() { form.submit(); }, 50); 
     } 
    }); 
})(jQuery); 
+0

這有一個問題,它會導致提交而不管字段中的驗證。基本上可以提交一個空白表格。 – dvoutt 2015-02-24 02:03:39

+0

@dvoutt是的,它肯定會 - 但你的原始代碼根本沒有引用驗證。您如何糾正這一點完全取決於您如何進行驗證 - 並且解決方案可能會變得非常複雜。然而,基本的前提是 - 在實際提交表單之前,您需要發出跟蹤調用,然後使用'setTimeout'來延遲表單提交。 – 2015-02-24 14:35:23

+0

我現在正在執行運行驗證的腳本。這是一個非常基本的驗證腳本。 – dvoutt 2015-02-24 14:37:47