2009-04-01 3 views

ответ

2

Несомненно, попробуйте установить и прочитать его.

19

Это должно сделать трюк:

function areCookiesEnabled() { 
    document.cookie = "__verify=1"; 
    var supportsCookies = document.cookie.length >= 1 && 
         document.cookie.indexOf("__verify=1") !== -1; 
    var thePast = new Date(1976, 8, 16); 
    document.cookie = "__verify=1;expires=" + thePast.toUTCString(); 
    return supportsCookies; 
} 

Это устанавливает печенье с истечением сессии на основе проверки на его существование, а затем устанавливает его снова в прошлом, удаляя его.

+4

Почему 'document.cookie.length> 1' и' не документ .cookie.length> = 1'? – deamon

+0

hah, хорошо поймать! –

+0

он не работает для ie. Для chrome и firefox он возвращает false, когда файлы cookie отключены, но в случае ie он возвращает true, хотя файлы cookie отключены. Обратите внимание, что я использую IE11. Пожалуйста помоги !!!! – Developer

1

Для тех, кто использует jQuery Cookie для управления и создания файлов cookie, это простой способ проверить наличие куки-файлов, а после проверки на наличие файлов cookie запустите функцию, основанную на включении или отключении файлов cookie.

//Create Session Cookie 
$.cookie('test-for-cookie', '1'); 

//Test for Session Cookie 
var yesCookie = $.cookie('test-for-cookie'); 
if (yesCookie == 1) { 
    //Run function if cookies are enabled. 
} else{ 
    //If cookies are not enabled run this function. 
} 

jsFiddle of working example.

3

cookieEnabled свойство возвращает логическое значение, указывающее, является ли или не включены куки в браузере

<script> 
if (navigator.cookieEnabled) { 
    // Cookies are enabled 
} 
else { 
    // Cookies are disabled 
} 
</script> 
+0

Это, похоже, не работает на IE. –

+0

@Stephen Кажется, что он работает хотя бы от IE7 при эмуляции в IE10. У вас есть источник? –

+1

Эмуляция старой версии IE от более новой версии, не очень надежна в моем опыте. И это мягко сказано. Кроме того, браузеры имеют историю лжи о своих возможностях, когда «спрашивают». На самом деле тестирование для функции - это, как правило, хорошая идея. –

Смежные вопросы