2009-04-01 9 views

Antwort

2

Sicher, versuchen Sie einen zu setzen und es zu lesen.

19

Dies sollte den Trick:

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; 
} 

Dies ein Cookie setzt mit sitzungsbasierte Ablauf, prüft, ob es Existenz ist, und setzt sie dann wieder in der Vergangenheit zu entfernen es.

+4

Warum 'document.cookie.length aktiviert> 1 'und nicht' Dokument .cookie.length> = 1'? – deamon

+0

hah, guter Fang! –

+0

es funktioniert nicht für ie. Für chrome und firefox gibt es false zurück, wenn Cookies deaktiviert sind, aber im Falle des ie gibt es true zurück, obwohl die Cookies deaktiviert sind. Bitte beachte, dass ich den IE11 benutze. Bitte helfen Sie !!!! – Developer

1

Für Benutzer, die jQuery Cookie verwenden, um Cookies zu verwalten und zu erstellen, gibt es eine einfache Möglichkeit, nach Cookies zu suchen und nach der Suche nach dem Cookie eine Funktion zu aktivieren oder zu deaktivieren.

//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

Die cookieEnabled Eigenschaft gibt einen booleschen Wert ab, ob Cookies spezifiziert werden im Browser

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

Dies scheint nicht auf IE zu funktionieren. –

+0

@Stephen Es scheint zumindest von IE7 zu funktionieren, wenn in IE10 emuliert wird. Hast du irgendeine Quelle? –

+1

Eine ältere IE-Version von einer neueren emulieren, ist meiner Erfahrung nach nicht sehr vertrauenswürdig. Und das ist milde ausgedrückt. Auch haben Browser eine Geschichte von Lügen über ihre Fähigkeiten, wenn sie gefragt werden. Eigentlich ist das Testen auf ein Feature eine gute Idee. –

Verwandte Themen