Javascript 如何在页面刷新后隐藏div?

Javascript 如何在页面刷新后隐藏div?,javascript,jquery,wordpress,Javascript,Jquery,Wordpress,我有一个简单的显示和隐藏分区 加载页面时div会自动加载,然后您可以通过单击“关闭”关闭div 刷新页面后,div再次显示,如何将其编码为一旦关闭,一个月内不再打开 提前谢谢 本 这是我到目前为止的代码 <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" type="text/javascript"></script> <script src="http://innosi

我有一个简单的显示和隐藏分区

加载页面时div会自动加载,然后您可以通过单击“关闭”关闭div

刷新页面后,div再次显示,如何将其编码为一旦关闭,一个月内不再打开

提前谢谢

这是我到目前为止的代码

 <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" type="text/javascript"></script>
<script src="http://innosite.s3.amazonaws.com/cookie/jquery.cookie.js"></script>
<script type="text/javascript">

$(document).ready(function() {
 // hides the slickbox as soon as the DOM is ready
  $('#slickbox').show();
 // shows the slickbox on clicking the noted link  
  $('#slick-show').click(function() {
    $('#slickbox').show('slow');
    return false;
  });
 // hides the slickbox on clicking the noted link  
  $('#slick-hide').click(function() {
    $('#slickbox').hide('fast');
    return false;
  });

 // toggles the slickbox on clicking the noted link  
  $('#slick-toggle').click(function() {
    $('#slickbox').toggle(400);
    return false;
  });
});

</script>
<script type="text/javascript">
function createCookie(name,value,days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++) {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}


//user closes your box
createCookie('mybox',1,30);

//check if the box should be hidden
if (readCookie('mybox')) 
    $('#slickbox').hide();
</script>

$(文档).ready(函数(){
//DOM就绪后立即隐藏滑动框
$(“#slickbox”).show();
//单击所标注的链接时显示滑动框
$(“#滑头秀”)。单击(函数(){
$('slickbox')。show('slow');
返回false;
});
//单击标注的链接时隐藏滑动框
$(“#平滑隐藏”)。单击(函数(){
$('slickbox')。隐藏('fast');
返回false;
});
//单击标记的链接时切换滑动框
$(“#平滑切换”)。单击(函数(){
$(“#滑动框”)。切换(400);
返回false;
});
});
函数createCookie(名称、值、天数){
如果(天){
变量日期=新日期();
date.setTime(date.getTime()+(天*24*60*60*1000));
var expires=“;expires=“+date.togmString();
}
else var expires=“”;
document.cookie=name+“=”+value+expires+“path=/”;
}
函数readCookie(名称){
变量nameEQ=name+“=”;
var ca=document.cookie.split(“;”);
对于(变量i=0;i
这里有一个参考。有了这么小的代码,重新开始可能会更容易


有一条评论“使用cookie”,然后它就消失了,尽管它完全符合要求:您可以在客户端设置并阅读它。在服务器上忽略它。甚至还有一个jQuery插件。

您可以随时使用本地存储:

$(function() {

    if (localStorage) { //if local storage
        if (!localStorage.getItem('visited')) { // if not site is visited before
            $('#slickbox').show(); //show element
        }
    } else { //if not local storage use cookies or just show element in old browsers
        $('#slickbox').show();
    }

    // shows the slickbox on clicking the noted link  
    $('#slick-show').click(function() {
        $('#slickbox').show('slow');
        return false;
    });
    // hides the slickbox on clicking the noted link  
    $('#slick-hide').click(function() {
        $('#slickbox').hide('fast');
        localStorage.setItem('visited', true); //set flag, site now visited and element hidden
        return false;
    });

    // toggles the slickbox on clicking the noted link  
    $('#slick-toggle').click(function() {
        $('#slickbox').toggle(400);
        return false;
    });
});​

什么意思,一些变量?比如cookie或url中的某个参数。我知道,我正在尝试使用该代码设置cookie。我尝试过的一切都不起作用。我一定是疯了,我一开始没看到你有任何代码(最后,我用谷歌搜索了一些类似“javascript+cookie+splash screen”的东西)我只想使用
localStorage
而不是cookies。API更简单、更有效。如果用户使用的是旧版本的IE,则有back compat jQuery插件可以从localStorage退回到cookies。我正要使用localStorage而不是cookies!刚刚遇到它!:)是的,只有IE7->below和其他一些非常旧的浏览器不支持,因此不支持本地存储的用户数量很少,因此我只会显示或隐藏该元素作为默认状态,以供任何使用蹩脚浏览器的用户使用,并且不太关心该元素是否会对这些用户造成干扰,只要该网站正常工作,因为这可能会影响1%以上的og用户。与Cookie相比,它更容易处理。我使用了该代码代替了其他代码,现在div根本没有出现。那是因为你已经访问了该网站?如果您使用的是chrome,请打开控制台(F12),单击“资源”并查找本地存储,现在找到“已访问”条目(应设置为true)并将其删除以再次显示元素。我已使用“清除浏览数据”清除浏览器缓存,但仍然没有显示任何内容。我已决定现在使用本地存储!:)