搜尋
首頁web前端js教程jquery.cookie用法詳細解析_jquery

Cookie是由伺服器端生成,傳送給User-Agent(一般是瀏覽器),瀏覽器會將Cookie的key/value儲存到某個目錄下的文字檔案內,下次要求相同網站時就傳送該Cookie給伺服器(前提是瀏覽器設定為啟用cookie)。

例如購物網站儲存使用者曾經瀏覽過的產品列表,或入口網站記住使用者喜歡選擇瀏覽哪一類新聞。 在使用者允許的情況下,還可以儲存使用者的登入訊息,使得使用者在造訪網站時不必每次都鍵入這些資訊?

怎麼在js/jquery操作處理cookie那?今天分享一個cookie操作類別--jQuery.Cookie.js,是一個輕量級的Cookie管理外掛程式。

Cookie下載網址: http://plugins.jquery.com/project/cookie.

特別提醒,今日發現一個特別的錯誤,google瀏覽器提示:has no method $.cookie。火狐瀏覽器提示:$.cookie is not a function;調試了半天,終於找到原因,如果同一個頁面兩次或多次引入Jquery插件就會報此錯誤。

  使用方法:

  1、引入jQuery與jQuery.Cookie.js插件。

複製程式碼 程式碼如下:



2.將cookie寫入檔案

 var COOKIE_NAME = 'username';  
  if( $.cookie(COOKIE_NAME) ){  
    $("#username").val( $.cookie(COOKIE_NAME) );  
  }  
  $("#check").click(function(){  
    if(this.checked){  
      $.cookie(COOKIE_NAME, $("#username").val() , { path: '/', expires: 10 });  
      //var date = new Date();  
      //date.setTime(date.getTime() + (3 * 24 * 60 * 60 * 1000)); //三天后的这个时候过期  
      //$.cookie(COOKIE_NAME, $("#username").val(), { path: '/', expires: date });  
    }else{  
      $.cookie(COOKIE_NAME, null, { path: '/' }); //删除cookie  
    }  
  });

函數。

   語法:$.cookie(名稱,值,[option])

   (1)讀取cookie值

   $.cookie(cookieName)         cookieName:要讀取的cookie名稱。

範例:$.cookie("username"); 讀取儲存在cookie中名為的username的值。

   (2)寫入設定Cookie值:

   $.cookie(cookieName,cookieValue);  cookieName:要設定的cookie名稱,cookieValue表示對應的值。

   範例:$.cookie("username","admin"); 將值"admin"寫入cookie名為username的cookie中。

      $.cookie("username",NULL);   銷毀名稱為username的cookie

   (3) [option]參數說明:

     expires:  有限日期,可以是一個整數或一個日期(單位:天)。  這個地方也要注意,如果不設定這個東西,瀏覽器關閉之後此cookie就失效了

     path:    cookie值儲存的路徑,預設與建立頁路徑一致。

domin: cookie網域屬性,預設與建立頁網域名稱相同。  這個地方要相當注意,跨域的概念,如果要主域名二級域名有效則要設定  ".xxx.com"

secrue:   一個布林值,表示傳送cookie值時,是否需要一個安全協定。

     範例:

複製程式碼 程式碼如下:

$.cookie("like", $(":radio[checked]").val(), {
          path: "/", expiress: 7
        })

一個完整設定與讀取cookie的頁面代碼:

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
  <title>jQuery学习2</title> 
  <script src="jQuery.1.8.3.js" type="text/javascript"></script> 
  <script src="jquery.cookie.js" type="text/javascript"></script> 
  <script type="text/javascript"> 
    $(function () { 
      $("#username").val($.cookie("username")); 
      if ($.cookie("like") == "刘德华") { 
        $(":radio[value='刘德华']").attr("checked", 'checked') 
      } 
      else { 
        $(":radio[value='张学友']").attr("checked", 'checked') 
      } 
      $(":button").click(function () { 
        $.cookie("username", $("#username").val(), { 
          path: "/", expires: 7 
        }) 
        $.cookie("like", $(":radio[checked]").val(), { 
          path: "/", expiress: 7 
        }) 
      }) 
    }) 
  </script> 
</head> 
<body> 
  <p><input type="text" id="username" value="" /></p> 
  <p> 
    <input type="radio" name="like" value="刘德华" />刘德华 
    <input type="radio" name="like" value="张学友" />张学友 
  </p> 
  <p><input type="button" value="保存" /></p> 
</body> 
</html>

cookie本質上是一個txt文本,因此只能夠存入字串,物件通常要序列化之後才能存入cookie,而取的時候要反序列才又能得到物件。

$(function () { 
     if ($.cookie("o") == null) { 
       var o = { name: "张三", age: 24 }; 
       var str = JSON.stringify(o);  //对序列化成字符串然后存入cookie 
       $.cookie("o", str, { 
         expires:7  //设置时间,如果此处留空,则浏览器关闭此cookie就失效。 
       }); 
       alert("cookie为空"); 
     } 
     else { 
       var str1 = $.cookie("o"); 
       var o1 = JSON.parse(str1);  //字符反序列化成对象 
       alert(o1.name);        //输反序列化出来的对象的姓名值 
     } 
   })

Cookie の読み取り、書き込み、削除ができる軽量の Cookie プラグイン。

jquery.cookie.js 設定

最初に jQuery ライブラリ ファイルをインクルードし、次に jquery.cookie.js ライブラリ ファイルをインクルードします



使用方法

新しいセッション Cookie を追加します:

$.cookie('the_cookie', 'the_value');

注: Cookie の有効期間が指定されていない場合、作成された Cookie はデフォルトでユーザーがブラウザを閉じるまで有効であるため、「セッション Cookie」と呼ばれます


Cookie を作成し、有効期間を 7 日間に設定します:

$.cookie('the_cookie', 'the_value', { 有効期限: 7 });

注: Cookie の有効期間が指定されている場合、作成される Cookie は「永続 Cookie」と呼ばれます。

Cookie を作成し、その Cookie への有効なパスを設定します:

$.cookie('the_cookie', 'the_value', { 有効期限: 7, パス: '/' });

注: デフォルトでは、Cookie を設定する Web ページのみが Cookie を読み取ることができます。別のページによって設定された Cookie をページで読み取れるようにする場合は、Cookie のパスを設定する必要があります。

Cookie パスは、Cookie を読み取ることができる最上位ディレクトリを設定するために使用されます。このパスを Web サイトのルート ディレクトリに設定すると、すべての Web ページが相互に Cookie を読み取れるようになります (通常、競合を防ぐためにこのパスは設定しないでください)


Cookie を読み取ります:

$.cookie('the_cookie');

// クッキーは存在します => 'the_value' $.cookie('not_existing') // クッキーは存在しません =>

Cookie を削除するには、Cookie の値として null を渡します:


$.cookie('the_cookie', null);

関連パラメータの説明
有効期限: 365

Cookie の有効期間を定義します。値は 1 (Cookie の作成時からの日数) または日付です。

省略した場合、作成される Cookie はセッション Cookie となり、ユーザーがブラウザを終了すると削除されます。


パス: '/'

デフォルト: Cookie を設定する Web ページのみが Cookie を読み取ることができます。

Cookie の有効なパスを定義します。デフォルトでは、このパラメータの値は、Cookie が作成された Web ページへのパスです (ブラウザの標準動作)。

Web サイト全体でこの Cookie にアクセスしたい場合は、パス: '/' のように有効なパスを設定する必要があります。

有効なパスが定義されている Cookie を削除したい場合は、関数 $.cookie('the_cookie', null, { path: '/' }); を呼び出すときにこのパスを含める必要があります。

ドメイン: 'example.com'


デフォルト値: Cookie を作成した Web ページが所有するドメイン名。


安全: true

デフォルト値: false。 true の場合、Cookie の送信には安全なプロトコル (HTTPS) の使用が必要です。


未加工: true

デフォルト値: false。 デフォルトでは、Cookie の読み取りおよび書き込み時にエンコードとデコードが自動的に実行されます (エンコードには encodeURIComponent を使用し、デコードには decodeURIComponent を使用します)。

この機能をオフにするには、raw: true を設定するだけです。

$.cookie('the_cookie'); // クッキーを取得 $.cookie('the_cookie', 'the_value') // クッキーを設定 $.cookie('the_cookie', 'the_value', { 有効期限: 7 }); / クッキーの有効期限を 7 日後に設定します $.cookie('the_cookie', '', { 有効期限: -1 }) // クッキーを削除します

$.cookie('the_cookie', null) // クッキーを削除します

$.cookie('the_cookie','the_value', {expires: 7, path: '/',domain:'80tvb.com', secure: true});//メソッドの呼び出しを完了


//またはこれ: $.cookie('the_cookie','the_value');

//Cookie の削除: $.cookie('the_cookie',null);

Cookieを操作するjQueryプラグイン、おおよその使用方法は以下の通りです $.cookie('the_cookie') //Cookie 値を読み取ります

$.cookie('the_cookie', 'the_value') //Cookie の値を設定します

$.cookie('the_cookie', 'the_value', {expires: 7, path: '/', domain: 'jquery.com', secure: true});//有効期間、パスドメイン名を含む新しい Cookie を作成します、など
$.cookie('the_cookie', 'the_value') // 新しいクッキーを作成します
$.cookie('the_cookie', null) // クッキーを削除します

jquery は Cookie の有効期限を設定し、Cookie が利用可能かどうかを確認します

Cookie の有効期限を x 分に設定します

var date = new date();
date.settime(date.gettime() (x * 60 * 1000));
$.cookie('example', 'foo', { 有効期限: date });

$.cookie('example', 'foo', { 有効期限: 7});

Cookie が利用可能かどうかを確認してください
$(document).ready(function() {var dt = new date();dt.setseconds(dt.getseconds() 60);document.cookie = “cookietest=1;expires=” dt.togmtstring( );var cookiesenabled = document.cookie.indexof(“cookietest=") != -1;if(!cookiesenabled){//Cookie は使用できません……..}});

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
JavaScript的演變:當前的趨勢和未來前景JavaScript的演變:當前的趨勢和未來前景Apr 10, 2025 am 09:33 AM

JavaScript的最新趨勢包括TypeScript的崛起、現代框架和庫的流行以及WebAssembly的應用。未來前景涵蓋更強大的類型系統、服務器端JavaScript的發展、人工智能和機器學習的擴展以及物聯網和邊緣計算的潛力。

神秘的JavaScript:它的作用以及為什麼重要神秘的JavaScript:它的作用以及為什麼重要Apr 09, 2025 am 12:07 AM

JavaScript是現代Web開發的基石,它的主要功能包括事件驅動編程、動態內容生成和異步編程。 1)事件驅動編程允許網頁根據用戶操作動態變化。 2)動態內容生成使得頁面內容可以根據條件調整。 3)異步編程確保用戶界面不被阻塞。 JavaScript廣泛應用於網頁交互、單頁面應用和服務器端開發,極大地提升了用戶體驗和跨平台開發的靈活性。

Python還是JavaScript更好?Python還是JavaScript更好?Apr 06, 2025 am 12:14 AM

Python更适合数据科学和机器学习,JavaScript更适合前端和全栈开发。1.Python以简洁语法和丰富库生态著称,适用于数据分析和Web开发。2.JavaScript是前端开发核心,Node.js支持服务器端编程,适用于全栈开发。

如何安裝JavaScript?如何安裝JavaScript?Apr 05, 2025 am 12:16 AM

JavaScript不需要安裝,因為它已內置於現代瀏覽器中。你只需文本編輯器和瀏覽器即可開始使用。 1)在瀏覽器環境中,通過標籤嵌入HTML文件中運行。 2)在Node.js環境中,下載並安裝Node.js後,通過命令行運行JavaScript文件。

在Quartz中如何在任務開始前發送通知?在Quartz中如何在任務開始前發送通知?Apr 04, 2025 pm 09:24 PM

如何在Quartz中提前發送任務通知在使用Quartz定時器進行任務調度時,任務的執行時間是由cron表達式設定的。現�...

在JavaScript中,如何在構造函數中獲取原型鏈上函數的參數?在JavaScript中,如何在構造函數中獲取原型鏈上函數的參數?Apr 04, 2025 pm 09:21 PM

在JavaScript中如何獲取原型鏈上函數的參數在JavaScript編程中,理解和操作原型鏈上的函數參數是常見且重要的任�...

微信小程序webview中Vue.js動態style位移失效是什麼原因?微信小程序webview中Vue.js動態style位移失效是什麼原因?Apr 04, 2025 pm 09:18 PM

在微信小程序web-view中使用Vue.js動態style位移失效的原因分析在使用Vue.js...

在Tampermonkey中如何實現對多個鏈接的並發GET請求並依次判斷返回結果?在Tampermonkey中如何實現對多個鏈接的並發GET請求並依次判斷返回結果?Apr 04, 2025 pm 09:15 PM

在Tampermonkey中如何對多個鏈接進行並發GET請求並依次判斷返回結果?在Tampermonkey腳本中,我們經常需要對多個鏈...

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用