0

我在我的页面上放了一个小框,当有人来时我想显示它,但是当他们单击“关闭”时,它会在他们的会话中消失。现在我有...

<script language="JavaScript">
function setVisibility(id, visibility) {
document.getElementById(id).style.display = visibility;
}
</script>

然后只需关闭 div ...

onclick="setVisibility('divname', 'none');

但这是每页。我可以添加或更改什么来设置它,这样一旦他们单击关闭,它就不会回来,直到他们清除与站点的会话?

谢谢

编辑:我正在使用 php。感谢到目前为止的答案,有人能指出我添加cookie的方向吗?

4

2 回答 2

4

使用此功能创建一个 cookie。每当用户隐藏 div 时调用它。

function setCookie(c_name,value,exdays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate() + exdays);
var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
document.cookie=c_name + "=" + c_value;
}

然后在每一页上,添加这个:

function checkCookie()
{
var username=getCookie("username");
  if (username!=null && username!="")
  {
  alert("Welcome again " + username);
  }
else
  {
  username=prompt("Please enter your name:","");
  if (username!=null && username!="")
    {
    setCookie("username",username,365);
    }
  }
}

并检查他们是否关闭了 div。这些是直接摘录。您必须进行修改以满足您的要求。这只是可以使用的流程。

于 2012-05-23T16:08:16.477 回答
1

当他们单击关闭时,您可以在 Javascript 中设置会话 cookie,并始终检查 cookie 的存在(或值)。

(在这种情况下不需要服务器端)

于 2012-05-23T15:59:56.483 回答