2016-04-14 55 views
0

我在嘗試使用JavaScript來啓用或禁用Cookie。如何查找瀏覽器的cookies是啓用還是禁用?

詳細描述

我已經建立在J​​avaScript的函數,如下:

if (navigator.cookieEnabled != true) { 
       alert("Cookies are not enabled, Please enable cookies to continue logging in ProjectName"); 
      } 

我已經把該函數在onload在頁面的主體中。請注意,此功能適用於Chrome和Firefox。

但它是不工作的IE11,原因是navigator.cookieEnabled總是返回true即使cookie是禁用或封鎖所以請推薦其他方式或添加評論,使這一權利。 也使用document.cookies.length但即使禁用了cookie也返回true。

+0

你開到使用庫 - 如果是這樣的https:/ /modernizr.com/已經有這方面的檢查(檢查cookie在https://modernizr.com/docs) – potatopeelings

+1

可能重複的[jQuery檢測Cookie啓用](http://stackoverflow.com/questions/8112634/jquery-detecting -cookies-enabled) – smnbbrv

+0

@TrilokPathak根據你在這裏發佈的代碼,你沒有嘗試任何他們在那裏給出的解決方案 – smnbbrv

回答

2

如果你不想使用圖書館,你可以只使用相關位從庫中,像這樣(從https://github.com/Modernizr/Modernizr/blob/74655c45ad2cd05c002e4802cdd74cba70310f08/feature-detects/cookies.js

function supportsCookies() { 
    try { 
     // Create cookie 
     document.cookie = 'cookietest=1'; 
     var ret = document.cookie.indexOf('cookietest=') != -1; 
     // Delete cookie 
     document.cookie = 'cookietest=1; expires=Thu, 01-Jan-1970 00:00:01 GMT'; 
     return ret; 
    } 
    catch (e) { 
     return false; 
    } 
} 
+0

這裏的ie和鉻它ret是真的那是什麼意思? – Developer

+0

true表示支持cookie。因此,如果您的IE和Chrome版本爲true,則表示您的IE和Chrome配置支持Cookie。 – potatopeelings

+0

在IE中,cookies被禁用仍然代碼返回我真正的我想要的是我想要找到瀏覽器設置cookie是否啓用,通過javascript。請注意。 – Developer

相關問題