rob*_*lls 69
要检查cookie,您可以使用:
function checkCookie(){
var cookieEnabled = navigator.cookieEnabled;
if (!cookieEnabled){
document.cookie = "testcookie";
cookieEnabled = document.cookie.indexOf("testcookie")!=-1;
}
return cookieEnabled || showCookieFail();
}
function showCookieFail(){
// do something here
}
// within a window load,dom ready or something like that place your:
checkCookie();
Run Code Online (Sandbox Code Playgroud)
并且为了检查JavaScript,使用<noscript>
带有某种消息的标签
Noa*_*mon 19
更新(6/25/18):
很多这些帖子,包括我的,正在从Modernizr获取片段.随着Modernizr代码的更新,它们最终都会变得过时.
我认为这个问题的最佳答案应该是直接使用Modernizr.
if (Modernizr.cookies) {
// supported
} else {
// not-supported
}
Run Code Online (Sandbox Code Playgroud)
原答案(5/11/17):
这是直接来自Modernizr,并且在本文中比其他解决方案在更多浏览器中工作.
https://github.com/Modernizr/Modernizr/commit/33f00fbbeb12e92bf24711ea386e722cce6f60cc
function checkCookie(){
// Quick test if browser has cookieEnabled host property
if (navigator.cookieEnabled) return true;
// 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;
}
Run Code Online (Sandbox Code Playgroud)
Zym*_*tik 15
由于cookie检测在IE 11中不起作用,我建议使用Modernizr方法:
function areCookiesEnabled() {
try {
document.cookie = 'cookietest=1';
var cookiesEnabled = document.cookie.indexOf('cookietest=') !== -1;
document.cookie = 'cookietest=1; expires=Thu, 01-Jan-1970 00:00:01 GMT';
return cookiesEnabled;
} catch (e) {
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
这是最简单的方法
if (navigator.cookieEnabled) {
document.write("Cookies Enabled");
} else {
document.write("Oops Cookies Not Enabled");
}
Run Code Online (Sandbox Code Playgroud)
Check if Cookies Enabled in Your Browser:
<br />
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
44537 次 |
最近记录: |