jQuery操作cookie
web開發(fā)過程中如果網站有一部分信息是存儲在cookie中并與服務器交互的話,那么前臺有時就會遇到需要對cookie中信息進行操作的情況,一個最典型的例子就是在前臺判斷用戶是否登錄過當前所訪問的網站。
可以用js原生的代碼操作cookie,不過對于已經習慣在前臺使用jquery的人員來說,最好能有一種直接擴展到jquery實例對象中的方法來統(tǒng)一操作風格,這里記錄一個個人感覺還算簡潔的方案。
$.extend({ cookie : function(name, val) { if (!val) { var a = document.cookie.match(RegExp("(^|\s*)" + name + "=([^;]*)(;|$)")); return a ? decodeURIComponent(a[2]) : null; } else { document.cookie = name + "=" + escape(val); } }, removeCookie : function(name) { var expires = new Date(); expires.setTime(expires.getTime() - 1); document.cookie = name + "=;expires=" + expires.toGMTString(); } });
這樣的話使用起來就統(tǒng)一風格了,以登錄為例:
取值--$.cookie("logonFlag");
賦值--$.cookie("logonFlag", true);
刪除--$.removeCookie("logonFlag");
cookie方法作為賦值功能使用時還可以提供第三個參數擴展,由用戶對需要賦值的cookie提供可選的屬性并賦值。
實際使用時發(fā)現這里的賦值/取值有些限制,對某些特殊符號(比如“>”、“<”符號)不能有效的編碼/解碼,不過總體來說還是很方便使用的。
以上所述是小編給大家介紹的jQuery操作cookie,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
相關文章
關于event.cancelBubble和event.stopPropagation()的區(qū)別介紹
cancelBubble用于ie的阻止冒泡事件,event.stopPropagation()用于firefox和chrome等其他瀏覽器的疑惑介紹。2011-12-12jQuery中使用data()方法讀取HTML5自定義屬性data-*實例
如果你使用jQuery類庫,那么你可以非常愉悅的使用jquery的data()方法存取data-* 自定義屬性,方法允許我們在DOM元素上綁定任意類型的數據,避免了循環(huán)引用的內存泄漏風險2014-04-04jQuery一步一步實現跨瀏覽器的可編輯表格,支持IE、Firefox、Safari、Chrome、Opera
在修改數據時,有時候為了方便,我們希望能夠直接在表格里面對數據進行直接修改。2009-08-08