2012-02-11 4 views
0

쿠키를 설정하는 다음 함수를 작성했습니다. 여기 $. $ 도메인에 도메인 이름이 있습니다.자바 스크립트 쿠키. 경로가 설정되지 않았습니다

function $cookie(name,value,lifeTime,path,domain,secure){//lifetime in hours 
     if(typeof name == 'undefined' || name == ''){ 

      alert('ERROR !!!\n Name of the cookie is not passed \n'); 
      return false; 
     } 

     if(typeof value == 'undefined'){ 

      alert('ERROR !!!\n Value of the cookie '+name+' is not passed \n'); 
      return false; 
     } 
     var c_ = name +'='+escape(value)+';'; 

      if(typeof lifeTime != 'undefined'&&lifeTime != ''){ 
       var life = new Date(); 
       lifeTime<1&&lifeTime>0life.setMinutes(life.getMinutes()+lifeTime*60):life.setHours(life.getHours()+lifeTime); 
       life = life.toUTCString(); 
       c_+='expires='+life+";"; 
     } 
     else lifeTime = 'Unspecified'; 

     if(typeof domain != 'undefined' && domain != '') 
       c_+= 'domain='+domain+';'; 
     else 
      domain = $.$domain; 
     if(secure == 1) 
      c_ += 'secure=secure;';//secure 
     else 
         secure = 0; 
     if(typeof path != 'undefined' && path != '') 
      c_ += 'path='+path+';'; 
     else 
         path = '/'; 
     document.cookie = c_; 
     this.$name = name; 
     this.$value = value; 
     this.$life = lifeTime; 
     this.$domain = domain; 
     this.$secure= secure; 
     this.$path = path; 
     if(!$.$COOKIE) 
      $.$COOKIE = {}; 
     if(lifeTime<0) 
     { 
      var t; 
      if(t = $.$COOKIE[name]) 
      { 
       delete t.$name; 
       delete t.$value; 
       delete t.$life; 
       delete t.$domain; 
       delete t.$secure; 
       delete t.$path; 
       delete $.$COOKIE[name]; 
      } 
     } 
     else 
     $.$COOKIE[name] = this; 

     return this; 
    } 
      var a = new $cookie('a2',6,1,'./scripts',''); 

$. $의 COOKIE 모든 도메인에 의해 설정된 쿠키 .. 스크립트를 보유하고 내 루트 디렉토리에있는 디렉토리에 .. 후 가 생성, 내가 구글 크롬에서 쿠키를 볼, 그러나 경로는 set.It는 내/디렉토리로 설정하지 왜 라니

if(typeof domain != 'undefined' && domain != '') 
     c_+= 'domain='+domain+';'; 
     else 
     domain = $.$domain; 

이 있어야 할 것 같다 이런 일이

답변

0

입니다

if(typeof domain != 'undefined' && domain != '') 
     c_+= 'domain='+domain+';'; 
     else 
     c_+= 'domain='+$.$domain+';'; 
+0

: 도메인이 document.cookie 도메인에 지정되지 않은 경우 쿠키가 설정된 페이지의 도메인이됩니까? 맞습니까? 그래서 나는 document.cookie에 추가하지 않았습니다. 사용자가 도메인을 지정하는 경우에만 추가됩니다. –

+0

$ $ 도메인이 전역이고 도메인에 해당 값을 사용하고자 함을 이해했습니다. –

+0

ok ... 경로가 설정되지 않았습니까? –

관련 문제