譬如:假定网页[url]http://www.XX.com/webs/web1/2.htm[/url] 建立了一个 cookie,
则此 cookie 可以被http:// [url]www.XX.com/webs/web1/.....[/url]的目录所读取,
但不能被http:// [url]www.XX.com/webs[/url] 的其它目录所读取。
所以如果要设定其它目录也可读取此Cookie 则可设path=/webs,
则网页/webs下的其它目录就可以读取此 cookie。
若设定 path=/,则网站 http:// [url]www.XX.com[/url] 里所有网页均可以读取此 cookie。
Javascript例子:
document.cookie = "name=aa;path=/";
曾经在小站上想用Javascript操作cookie做个每个用户弹窗只弹一次,
后来发现不同目录之间还是会重复弹出,于是从网络上找到了以上方法,解决问题。
附上javascript一用户只弹一次代码:
<!--
popads ();
function popads ()
{
var ads=GetCookie('ws126pop');//取得cookie
if(ads==null || (ads!='haved'){
document.write("<SCRIPT LANGUAGE=JavaScript1.1 SRC='http://play.unionsky.cn/show/?placeID=XX'></SCRIPT>");//弹窗广告
closead('haved');
}
}
function GetCookie (name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen) {
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return getCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0) break;
}
return null;
}
function getCookieVal (offset) {
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}
function closead(val){
var expDays = 24; //设置cookies时间,任意设。
var exp = new Date();
exp.setTime(exp.getTime() + (expDays*60*60*1000));
SetCookie('ws126pop', val, exp);//ws126pop为cookie名,任意设
}
function SetCookie (name, value) {
var argv = SetCookie.arguments;
var argc = SetCookie.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
var path = (argc > 3) ? argv[3] : null;
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;
document.cookie = name + "=" + escape (value) +
((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + "; path=/" +
((domain == null) ? "" : ("; domain=" + domain)) +
((secure == true) ? "; secure" : "");
}
//-->