女网友叫我一起做优惠券网站,方正悠黑使用网站建设侵权么,ppt模板免费下载网站哪个好,免费网页游戏网站Cookie#xff08;也#xff09;是JavaScript中的一种机制#xff0c;可以实现严格的跨页面全局变量的要求。 Cookie是存于用户硬盘的一个文件#xff0c;这个文件通常对应于一个域名#xff0c;当浏览器再次访问这个域名时#xff0c;便使这个cookie可用。因此#xff… Cookie也是JavaScript中的一种机制可以实现严格的跨页面全局变量的要求。 Cookie是存于用户硬盘的一个文件这个文件通常对应于一个域名当浏览器再次访问这个域名时便使这个cookie可用。因此cookie可以跨越一个域名下的多个网页但不能跨越多个域名使用。 在Cookie设置中用escape()函数进行编码可避免乱码和特殊字符问题; 当使用escape()编码后在取出值以后需要使用unescape()进行解码才能得到原来的cookie值。 设置Cookie时可以直接给document.cookie赋值 1document.cookieuserId828;2document.cookieuserNamehulk; 而且后面的值不会覆盖前面的值它具有一种累加机制。 cookie的值可以由document.cookie直接获得但这样获取的是所有的cookie值要通过一指定cookie名称来获得所对应的值则需做一些处理。 构造通用的cookie处理函数 1script typetext/javascript 2 /**//*** 3 * 设置Cookie 通用函数 4 * param {string} cookieName Cookie 名称 5 * param {string} cookieValue Cookie 值 6 * param {string} nDays Cookie 过期天数 7 */ 8 function SetCookie(cookieName, cookieValue, nDays) 9 {10 /**//* 当前日期 */11 var today new Date();12 13 /**//* Cookie 过期时间 */14 var expire new Date();1516 /**//* 如果未设置nDays参数或者nDays为0取默认值 1 */17 if(nDays null || nDays 0) 18 nDays 1;19 20 /**//* 计算Cookie过期时间 */21 expire.setTime(today.getTime() nDays * 24 * 60 * 60 * 1000); //获取毫秒数22 23 /**//* 设置Cookie值 */24 document.cookie cookieName escape(cookieValue) ;expires expire.toGMTString();25 } 26 下面我来编写一个登录函数加强理解和应用 1 // 登录函数 2 function login() 3 { 4 // 用户名 5 var username $(user).value; 6 7 // 用户密码 8 var password $(pass).value; 910 // 我们这里设置一额外条件交友登录用户选择11 // 是否7天内无需再登录即可访问12 var save $(save).checked;13 14 // 这里假设一合法的用户名/密码是 admin/admin15 if(username admin password admin)16 {17 // 在Cookie中保存用户名18 if(save) 19 SetCookie(username,username,7);20 else21 SetCookie(username,username,1);22 23 // 通过验证跳转到下一页面24 document.location page2.html;25 }26 else27 {28 alert(用户名或密码错误);29 }30 }3132 function $(id)33 {34 return document.getElementById(id);35 }3637/script 调用或称 嵌入以上Js代码的页面文件如下 1 //Page1.html 的 body 部分其他省略 2 body 3 div idmain 4 div 5 span用户名/span input typetext iduser / 6 /div 7 div 8 span密 码/sapn input typepassword idpass / 9 /div 10 div11 input typecheckbox idsave / 七天内无需登录12 /div13 div14 input typebutton onclicklogin() value登 录 /15 /div16 /body 页面效果 如下所示 前面讲到 “设置Cookie时可以直接给 document.cookie 赋值 document.cookieuserId828; document.cookieuserNamehulk; 而且后面的值不会覆盖前面的值它具有一种 累加机制。 ” Page2.html内部页面你可以先这样理解必须在登录后才能使用。该页面需要对用户当前PC的Cookie进行判断如果发现用户已经通过该机器登录过该页面则显示 欢迎信息否则显示“请登录”的链接。 Page2.html页面的代码如下下面分开说明 1 Js代码 通用读取Cookie方法 script typetext/javascript /**//*** * 读取指定的Cookie值 * param {string} cookieName Cookie名称 */ // 方法一 function GetCookie(cookieName) { /**//* Cookie 字符串 */ var theCookie document.cookie; /**//* 找到cookieName的位置 */ var ind theCookie.indexOf(cookieName); /**//* 如果未找到cookieName返回空字符串 */ if(ind -1 || cookieName ) return ; /**//* 确定分号的位置 */ var ind1 theCookie.indexOf(;, ind); if(ind1 -1) ind1 theCookie.length; /**//* 读取Cookie值 */ return unescape(theCookie.substring(indcookieName.length 1, ind1)); } // 方法二 function GetCookie(cookieName) { var strCookiedocument.cookie; // 将多cookie切割为多个名/值对 var arrCookiestrCookie.split(; ); for(var i0;iarrCookie.length;i) { // 遍历cookie数组处理每个cookie对 var arrarrCookie[i].split(); // 找到名称为cookieName的cookie并返回它的值 if(arr[0]username) return arr[1]; } return ;} (2) Page2.html HTML 代码部分 // Page2.html 页面初始加载执行的Js代码: function init() { // 从Cookie中读取用户名信息 var username GetCookie(username); // 如果用户已经登录过 if(username username.length 0) { // 显示欢迎信息 $(msg).innerHTML h2欢迎光临 username !/h2; } else { $(msg).innerHTML a hrefPage1.html请返回登录/a; } } function $(id) { return document.getElementById(id); } // HTML body部分 body onloadinit() div idmsg/div /body 另外关于删除Cookie,可以使用以下方法 该函数可以删除指定名称的cookie script languageJavaScript typetext/javascript function deleteCookie(username){ var datenew Date(); // // 删除一个cookie就是将其过期时间设定为一个过去的时间 date.setTime(date.getTime()-10000); document.cookienamev; expire date.toGMTString();}/script 转载于:https://www.cnblogs.com/Dlonghow/archive/2008/07/10/1240109.html