溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

jQuery如何利用cookie 實(shí)現(xiàn)本地收藏功能(不重復(fù)無需多次命名)

發(fā)布時(shí)間:2021-05-20 14:54:44 來源:億速云 閱讀:144 作者:小新 欄目:web開發(fā)

小編給大家分享一下jQuery如何利用cookie 實(shí)現(xiàn)本地收藏功能(不重復(fù)無需多次命名),相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

1、cookie是什么:

①、cookie 是存儲(chǔ)于訪問者計(jì)算機(jī)中的變量。每當(dāng)一臺(tái)計(jì)算機(jī)通過瀏覽器來訪問某個(gè)頁面時(shí),那么就可以通過 JavaScript 來創(chuàng)建和讀取 cookie。

 ?、凇?shí)際上 cookie 是存于用戶硬盤的一個(gè)文件,這個(gè)文件通常對應(yīng)于一個(gè)域名,當(dāng)瀏覽器再次訪問這個(gè)域名時(shí),便使這個(gè)cookie可用。因此,cookie可以跨越一個(gè)域名下的多個(gè)網(wǎng)頁,但不能跨越多個(gè)域名使用。

 ?、邸⒉煌瑸g覽器對 cookie 的實(shí)現(xiàn)也不一樣。即保存在一個(gè)瀏覽器中的 cookie 到另外一個(gè)瀏覽器是 不能獲取的。

PS:cookie 和 session 都能保存計(jì)算機(jī)中的變量,但是 session 是運(yùn)行在服務(wù)器端的,而客戶端我們只能通過 cookie 來讀取和創(chuàng)建變量。

2、cookie的作用:

?、佟⒂脩粼诘谝淮蔚卿浤硞€(gè)網(wǎng)站時(shí),要輸入用戶名密碼,如果覺得很麻煩,下次登錄時(shí)不想輸入了,那么就在第一次登錄時(shí)將登錄信息存放在 cookie 中。下次登錄時(shí)我們就可以直接獲取 cookie 中的用戶名密碼來進(jìn)行登錄。
PS:雖然 瀏覽器將信息保存在 cookie 中是加密了,但是可能還是會(huì)造成不安全的信息泄露

  ②、類似于購物車性質(zhì)的功能,第一次用戶將某些商品放入購物車了,但是臨時(shí)有事,將電腦關(guān)閉了,下次再次進(jìn)入此網(wǎng)站,我們可以通過讀取 cookie 中的信息,恢復(fù)購物車中的物品。
PS:實(shí)際操作中,這種方法很少用了,基本上都是將這些信息存儲(chǔ)在數(shù)據(jù)庫中。然后通過查詢數(shù)據(jù)庫的信息來恢復(fù)購物車?yán)锏奈锲?br/>

 ?、?、頁面之間的傳值。在實(shí)際開發(fā)中,我們往往會(huì)通過一個(gè)頁面跳轉(zhuǎn)到另外一個(gè)頁面。后端服務(wù)器我們可以通過數(shù)據(jù)庫,session 等來傳遞頁面所需要的值。但是在瀏覽器端,我們可以將數(shù)據(jù)保存在 cookie 中,然后在另外頁面再去獲取 cookie 中的數(shù)據(jù)。

PS:這里要注意 cookie 的時(shí)效性,不然會(huì)造成獲取 cookie 中數(shù)據(jù)的混亂。

正文開始,下面通過代碼給大家介紹jq cookie 本地收藏功能,

JS核心部分

說明:用split(',')分隔字符串轉(zhuǎn)換數(shù)組數(shù)組,把上一次收藏的id 和這一次的收藏用 + “,”+ 當(dāng)前id 來存入,到時(shí)候用split() 方法 轉(zhuǎn)換成數(shù)組即可。

<script type="text/javascript">
 $(function(){
 var arr = $.cookie("attractionsid").split(',');
 console.log($.cookie());
 for (var i = 0; i < arr.length; i++) {
 if(parseInt(arr[i]) == parseInt( 請?zhí)钊隝D值 )){
 //判斷是否收藏過,收藏過亮圖標(biāo)
 $('#shoucang2').removeClass('hide');
 $('#shoucang1').addClass('hide');
 break;
 }
 };
 $("#shoucang").click(function(event) {
 var judge = true;
 console.log(arr)
 for (var i = 0; i < arr.length; i++) {
 if(parseInt(arr[i]) == parseInt(請?zhí)钊隝D值)){
  arr.splice(i,1);
  $.cookie("attractionsid", arr, { expires: 361});
  console.log('取消收藏');
  $('#shoucang2').addClass('hide');
  $('#shoucang1').removeClass('hide');
  judge = false;
  break;
 }
 };
 if(judge){
 $.cookie("attractionsid", $.cookie("attractionsid") + ","+"請?zhí)钊隝D值", { expires: 361});
 console.log('收藏成功');
 $('#shoucang2').removeClass('hide');
 $('#shoucang1').addClass('hide');
 }
 });
 })
</script>

jquery是什么

jquery是一個(gè)簡潔而快速的JavaScript庫,它具有獨(dú)特的鏈?zhǔn)秸Z法和短小清晰的多功能接口、高效靈活的css選擇器,并且可對CSS選擇器進(jìn)行擴(kuò)展、擁有便捷的插件擴(kuò)展機(jī)制和豐富的插件,是繼Prototype之后又一個(gè)優(yōu)秀的JavaScript代碼庫,能夠用于簡化事件處理、HTML文檔遍歷、Ajax交互和動(dòng)畫,以便快速開發(fā)網(wǎng)站。

以上是“jQuery如何利用cookie 實(shí)現(xiàn)本地收藏功能(不重復(fù)無需多次命名)”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI