如何在页面刷新后保留div内容

1 jquery caching

我正在使用Jquery创建一个动态div,我正在尝试缓存它,以便在页面刷新后将其恢复,请帮助如何实现此目的,

粘贴下面的代码

<script src="jquery-1.3.2.js" type="text/javascript"></script>
<script src="jQuery.jCache.js" type="text/javascript"></script>
<script type="text/javascript" language="javascript">
    $.jCache.maxSize = 20;
    function createDiv() {

        var divTemp = "<div><label>This is a Label</Label></div>";
        alert(divTemp);
        $(divTemp).appendTo("#divDisplay");
        $.jCache.setItem("myKey", divTemp);
    }

    $(document).ready(function() {


    if ($.jCache.hasItem("myKey")) {
        var cacheDiv = $.jCache.getItem("myKey");
            var cacheDiv = cacheDiv + "<a>anchor Tag</a>";
            $(cacheDiv).appendTo("#divDisplay");

        }
    }); 
</script>
Run Code Online (Sandbox Code Playgroud)

我试图在页面中使用按钮单击绘制div,在页面中绘制单击div后,当使用F5单击刷新它时,div消失,有没有办法使用缓存机制保留div内容?

这对我的整个功能来说是一个绝迹!

谢谢,Shajo

all*_*ode 6

您可能误解了jCache的工作方式.每当您(重新)加载页面时,缓存都会被有效地消除,因为浏览器将启动一个新的JavaScript执行环境.这种浏览器行为是有道理的,因为它阻止了不同网站上的JS能够相互交互,从而产生了一个巨大的安全漏洞.如果您使用jCache演示,则可以通过填充演示缓存,重新加载页面并注意缓存是空的来测试此行为.

至于您的特定应用程序,您需要(重新)设计它,以便不需要重新加载.这实际上是Ajax的重点.我非常怀疑这对你来说是个噱头.在最坏的情况下,您应该能够在用户重新加载页面时重新生成动态div.如果您需要记住某些状态以重新生成div,Cookie可能适合您.