2011-05-24 55 views
0

我需要在單個頁面上通過谷歌註冊多次轉換。在Chrome和Firefox中,這可以正常工作。在IE中,頁面/調用似乎被緩存,隨後只發送一次轉換。Google Adwords - 註冊多個轉換在IE中不起作用

我曾嘗試添加無緩存元標記,但這並沒有奏效。

<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="-1">

我也試圖調用繞過緩存問題,希望每次轉換完全不同的頁面。這也沒有奏效。

這是調用的轉換頁面。它被加載到一個iframe中。

<head> 

<script type="text/javascript"> 


    var google_conversion_id = 1070072355; 
    var google_conversion_language = "en"; 
    var google_conversion_format = "3"; 
    var google_conversion_color = "ffffff"; 
    var google_conversion_value = 0; 
    var google_conversion_label; 
    var googleConversionType = 1; //default to 1 

    //check if we need to to GCR 
    var GCR = QueryStringGet("G"); 
    if (GCR && GCR != "" && GCR != 0) { 
     googleConversionType = GCR; 
    } 

    /* 
    CONVERSION TYPES: 
    1- Single Lead: V-v8CMnc_gEQo4Sg_gM 
    2- Multiple Leads: oHF7CLHf_gEQo4Sg_gM 
    3 - Campaign Single: CmYQCMHd_gEQo4Sg_gM 
    4 - Consultation: aSv7CLne_gEQo4Sg_gM 
    */ 
    //set the label per conversion type 
    if (googleConversionType == 1) { 
     google_conversion_label = "V-v8CMnc_gEQo4Sg_gM"; 
    } 
    else if (googleConversionType == 2) { 
     google_conversion_label = "oHF7CLHf_gEQo4Sg_gM"; 
    } 
    else if (googleConversionType == 3) { 
     google_conversion_label = "CmYQCMHd_gEQo4Sg_gM"; 
    } 
    else if (googleConversionType == 4) { 
     google_conversion_label = "aSv7CLne_gEQo4Sg_gM"; 
    } 

    //retrieves a value from the querystring 
    function QueryStringGet(ji) { 
     hu = window.location.search.substring(1); 
     gy = hu.split("&"); 
     for (i = 0; i < gy.length; i++) { 
      ft = gy[i].split("="); 
      if (ft[0] == ji) { 
       return ft[1]; 
      } 
     } 
    } 
    </script> 
    <script type="text/javascript" src="http://www.googleadservices.com/pagead/conversion.js"></script> 
    <noscript> 
    <div style="display:inline;"> 
    <img height="1" width="1" style="border-style:none;" alt="" src="http://www.googleadservices.com/pagead/conversion/1070072355/?label=V-v8CMnc_gEQo4Sg_gM&amp;guid=ON&amp;script=0"/> 
    </div> 
    </noscript> 

    <title></title> 
</head> 

這裏是頁面加載到的IFRAME

function GoogleConversionRegister(pageNum) { 

    if (!pageNum || pageNum == 0) 
     pageNum = 1; 

    var iframe = document.createElement('iframe'); 
    iframe.style.width = '0px'; 
    iframe.style.height = '0px'; 
    document.body.appendChild(iframe); 
    iframe.src = 'http://www.nirshamim.co.il/google/conversion_' + pageNum + '.html?G=' + googleConversionType + '&tile=' + (Math.random() * 100000);} 

在這裏,代碼是結果從提琴手:
Chrome
IE

回答

0

爲了避免IE的緩存機制,我被迫用所需的javascript手動填充iframe(而不是加載外部頁面)。

代碼:

var iframe; 
if (document.createElement && (iframe = document.createElement('iframe'))) { 
    iframe.name = iframe.id = 'conversion_' + pageNum; 
    iframe.width = 0; 
    iframe.height = 0; 
    document.body.appendChild(iframe); 
} 
if (iframe) { 
     var iframeDoc; 
     if (iframe.contentDocument) { 
      iframeDoc = iframe.contentDocument; 
     } 
     else if (iframe.contentWindow) { 
      iframeDoc = iframe.contentWindow.document; 
     } 
     else if (window.frames[iframe.name]) { 
      iframeDoc = window.frames[iframe.name].document; 
     } 
     if (iframeDoc) { 
      iframeDoc.open(); 
      iframeDoc.write('<html><body><script language=javascript>var google_conversion_id = XXXXX; var google_conversion_language = "en"; var google_conversion_format = "3"; var google_conversion_color = "ffffff"; var google_conversion_value = 0; var google_conversion_label = "XXXX";</script><script type="text/javascript" src="http://www.googleadservices.com/pagead/conversion.js"></script></body></html>'); 
      iframeDoc.close(); 
     } 
    }