感谢 Shawn 为您解答,但不幸的是,由于浏览器并不总是发送引荐来源网址,因此每次都无法使用它不够可靠。因为如果没有设置,那么你就会陷入循环。
我想到的另一种解决方案是重定向到一个完全独立的页面,该页面本身检查是否启用了 cookie(通过重定向到自身)。如果启用了 cookie,它将重定向回原始页面。如果不是,那么它将重定向到有关问题的页面。我认为这应该有效,但我不确定。
最后,我在 IE 6、7 和 8、Safari 4、Google Chrome 4、Firefox 3.5、Opera 10.2 和一些不同的配置上尝试了 jQuery Cooke 插件,并且它在所有这些配置中都有效。这是我正在使用的代码:
$.cookie('test_cookie', 'cookie_value', { path: '/' });
if ($.cookie('test_cookie') == 'cookie_value') {
// cookie worked, set/enable appropriate things
}
它并不完美,但我认为它适用于 95% 的情况。否则,它会失败,只是不允许他们做任何事情。