欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

javascript操作cookie方法函數(shù)集合第2/2頁

 更新時間:2010年07月08日 02:28:03   作者:  
很多朋友需要使用到cookies操作,腳本之家以前也發(fā)表了不少相關的文章。這篇文章,雖然亂了點,但知識點比較多。


復制代碼 代碼如下:

<script>
//寫cookies函數(shù) 作者:翟振凱
function SetCookie(name,value)//兩個參數(shù),一個是cookie的名子,一個是值
{
var Days = 30; //此 cookie 將被保存 30 天
var exp = new Date(); //new Date("December 31, 9998");
exp.setTime(exp.getTime() + Days*24*60*60*1000);
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
}
function getCookie(name)//取cookies函數(shù)
{
var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
if(arr != null) return unescape(arr[2]); return null;
}
function delCookie(name)//刪除cookie
{
var exp = new Date();
exp.setTime(exp.getTime() - 1);
var cval=getCookie(name);
if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString();
}
SetCookie ("xiaoqi", "3")
alert(getCookie('xiaoqi'));
</script>

一個非常實用的javascript讀寫Cookie函數(shù)
復制代碼 代碼如下:

function GetCookieVal(offset)
//獲得Cookie解碼后的值
{
var endstr = documents.cookie.indexOf (";", offset);
if (endstr == -1)
endstr = documents.cookie.length;
return unescape(documents.cookie.substring(offset, endstr));
}
function SetCookie(name, value)
//設定Cookie值
{
var expdate = new Date();
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;
if(expires!=null) expdate.setTime(expdate.getTime() + ( expires * 1000 ));
documents.cookie = name + "=" + escape (value) +((expires == null) ? "" : ("; expires="+ expdate.toGMTString()))
+((path == null) ? "" : ("; path=" + path)) +((domain == null) ? "" : ("; domain=" + domain))
+((secure == true) ? "; secure" : "");
}
function DelCookie(name)
//刪除Cookie
{
var exp = new Date();
exp.setTime (exp.getTime() - 1);
var cval = GetCookie (name);
documents.cookie = name + "=" + cval + "; expires="+ exp.toGMTString();
}
function GetCookie(name)
//獲得Cookie的原始值
{
var arg = name + "=";
var alen = arg.length;
var clen = documents.cookie.length;
var i = 0;
while (i < clen)
{
var j = i + alen;
if (documents.cookie.substring(i, j) == arg)
return GetCookieVal (j);
i = documents.cookie.indexOf(" ", i) + 1;
if (i == 0) break;
}
return null;
}

<SCRIPT language="javascript">
<!--
function openpopup(){
url="popup.htm"
window.open("gonggao.htm","gonggao","width=260,height=212,left=200,top=0")
}
function get_cookie(Name) {
var search = Name + "="
var returnvalue = "";
if (documents.cookie.length > 0) {
offset = documents.cookie.indexOf(search)
if (offset != -1) {
offset += search.length
end = documents.cookie.indexOf(";", offset);
if (end == -1)
end = documents.cookie.length;
returnvalue=unescape(documents.cookie.substring(offset, end))
}
}
return returnvalue;
}
function helpor_net(){
if (get_cookie('popped')==''){
openpopup()
documents.cookie="popped=yes"
}
}
helpor_net()
//-->
</SCRIPT>

如果點了確定,只要不清cookie,以后訪問都不會再提示,如果不點確定則每次都會提示。放在js文件里,全站包含
復制代碼 代碼如下:

<SCRIPT LANGUAGE="JavaScript">
<!--
var the_cookie = document.cookie;
var broken_cookie = the_cookie.split(":");
var the_visiteraccepted = unescape(broken_cookie[1]);
//
if (the_visiteraccepted=="undefined"){
var tmp=confirm('中國人何時何地。');
if(tmp==false){
window.close();
}else{
var the_visiteraccepted = 1;
var the_cookie = "ILoveChina=visiteraccepted:" + escape(the_visiteraccepted);
document.cookie = the_cookie;
}
}
//-->
</SCRIPT>

1. Cookie的兼容性問題
Cookie的格式有2個不同的版本,第一個版本,我們稱為Cookie Version 0,是最初由Netscape公司制定的,也被幾乎所有的瀏覽器支持。而較新的版本,Cookie Version 1,則是根據(jù)RFC 2109文檔制定的。為了確保兼容性,JAVA規(guī)定,前面所提到的涉及Cookie的操作都是針對舊版本的Cookie進行的。而新版本的Cookie目前還不被Javax.servlet.http.Cookie包所支持。
2. Cookie的內(nèi)容
同樣的Cookie的內(nèi)容的字符限制針對不同的Cookie版本也有不同。在Cookie Version 0中,某些特殊的字符,例如:空格,方括號,圓括號,等于號(=),逗號,雙引號,斜杠,問號,@符號,冒號,分號都不能作為Cookie的內(nèi)容。這也就是為什么我們在例子中設定Cookie的內(nèi)容為"Test_Content"的原因。
雖然在Cookie Version 1規(guī)定中放寬了限制,可以使用這些字符,但是考慮到新版本的Cookie規(guī)范目前仍然沒有為所有的瀏覽器所支持,因而為保險起見,我們應該在Cookie的內(nèi)容中盡量避免使用這些字符

相關文章

  • JS設置手機驗證碼60s等待實現(xiàn)代碼

    JS設置手機驗證碼60s等待實現(xiàn)代碼

    本文給大家分享JS設置手機驗證碼60s等待實現(xiàn)代碼,需要的朋友參考下吧
    2017-06-06
  • 簡單談談原生js的math對象

    簡單談談原生js的math對象

    下面小編就為大家?guī)硪黄唵握務勗鷍s的math對象。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • javascript中的關于類型轉換的性能優(yōu)化

    javascript中的關于類型轉換的性能優(yōu)化

    類型轉換是大家常犯的錯誤,因為JavaScript是動態(tài)類型語言,你不能指定變量的類型。
    2010-12-12
  • 悄悄用腳本檢查你訪問過哪些網(wǎng)站的代碼

    悄悄用腳本檢查你訪問過哪些網(wǎng)站的代碼

    YouPorn是YouTube的成人自拍版,Alexa排名61。如果你登陸YouPorn主頁,它會悄悄用腳本檢查你訪問過哪些色情網(wǎng)站。
    2010-12-12
  • JavaScript實現(xiàn)函數(shù)緩存及應用場景

    JavaScript實現(xiàn)函數(shù)緩存及應用場景

    在JavaScript中,可以通過函數(shù)緩存來提高函數(shù)的執(zhí)行效率,本文就來介紹一下JavaScript實現(xiàn)函數(shù)緩存及應用場景,具有一定的參考價值,感興趣的可以了解一下
    2024-01-01
  • javascript導出csv文件(excel)的方法示例

    javascript導出csv文件(excel)的方法示例

    這篇文章主要給大家介紹了關于javascript導出csv文件(excel)的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用javascript具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-08-08
  • ES2020讓代碼更優(yōu)美的運算符 (?.) (??)

    ES2020讓代碼更優(yōu)美的運算符 (?.) (??)

    這篇文章主要介紹了ES2020讓代碼更優(yōu)美的運算符 (?.) (??),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01
  • js操作二級聯(lián)動實現(xiàn)代碼

    js操作二級聯(lián)動實現(xiàn)代碼

    網(wǎng)上二級(多級)聯(lián)動的例子也不少,有各種不同的操作方法。我所采用的方法網(wǎng)上也應該有的,不過我還沒有看到過。
    2010-07-07
  • JavaScript中原型鏈存在的問題解析

    JavaScript中原型鏈存在的問題解析

    本文通過實例給大家介紹js原型鏈存在的問題解析,非常不錯,具有參考借鑒價值,感興趣的朋友一起看看吧
    2016-09-09
  • JavaScript之ECharts用法講解

    JavaScript之ECharts用法講解

    這篇文章主要介紹了JavaScript之ECharts用法講解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08

最新評論