如何检查是否指定了referrer

时间:2012-06-14 14:27:47

标签: javascript

我被困在这一天超过一个小时:

   if((document.referrer===undefined)){

  if(url_window_location=='http://www.lhttp://livecas.com/sandbox/andbox/'){
      event_google_analytics_referrer=document.referrer.toString(); 
         log("DOCUMENT REFERRER: cookie is set user_details: "+document.referrer);
        eraseCookie('user_details');
         setCookie('user_details',document.referrer,365); 
   }

    if(url_window_location=='hhttp://livecas.com/sandbox/e')
    {   
        eraseCookie('user_details');
        setCookie('landing_page_ref',"FBLND1",365);
        //   log("Cookie is set"); 
    }
 }

 else{

       if(url_window_location=='http://livecas.com/sandbox/'){
            eraseCookie('user_details');
         setCookie('user_details',"Direct",365); 
          log("Direct cookie is set");

          event_google_analytics_referrer="Direct";
      }
 }

如果设置/存在document.referrer或者其他什么,我希望它在if条件中执行块,如果不是我想要else条件。现在无论什么

,它都会进入其他条件

1 个答案:

答案 0 :(得分:8)

document.referrer始终存在。只是有时它是空白的(空字符串)。

而不是if( document.referrer === undefined),而只是使用if(!document.referrer)。这将适用于所有虚假值。