我正在使用这个 javascript 函数在我的网站上设置一个 cookie,如果未设置 cookie,它将显示一个 div。
function accept_cookies(){
days=365; // number of days to keep the cookie
myDate = new Date();
myDate.setTime(myDate.getTime()+(days*24*60*60*1000));
document.cookie = 'cookie_t=1; expires=' + myDate.toGMTString();
}
用法:
<a onClick="HideContent('cookies'); accept_cookies()" href="javascript:HideContent('cookies')">
ok
</a>
此方法在我的桌面设备上效果很好,但在我的 Android 手机上效果不佳。我知道这一点是因为我多次单击该链接,并且 div 在其后继续显示链接,表示“可以”。
请您参考如下方法:
您可以使用 php 方法“setcookie”创建 Set-Cookie header ,这将在客户端设置 cookie。
http://php.net/manual/en/function.setcookie.php
发生在服务器端(php)的进程比客户端可靠得多。
php 和 ajax jquery 库的使用示例:
<a href="#" onClick="ajaxPost()">active</a>
function ajaxPost(){
$.post("action.php",{action: "setTheCookie"}, function(result){
// Do something
}
}
action.php
checkAction();
function checkAction(){
if($_POST["action"] == "setTheCookie")
setCookie("cookie name", "cookie value", time() + (86400 * 30), "/");
exit();
}