如何在jquery中设置会话变量?

cap*_*pri 28 html javascript jquery

我有一个html页面,当页面加载时打开一个弹出窗口.

我需要在页面第一次打开时设置弹出窗口.我认为会话或cookie是设置的.

    <script>
        !window.jQuery && document.write('<script src="fancybox/jquery-1.4.3.min.js"><\/script>');
    </script>
    <script type="text/javascript" src="fancybox/jquery.fancybox-1.3.4.pack.js"></script>       
    <script type="text/javascript">
    $(document).ready(function() {  
        $("a#example1").fancybox();     
        $("a#example1").trigger('click');           
    });

    </script>   
    <link rel="stylesheet" type="text/css" href="fancybox/jquery.fancybox-1.3.4.css" media="screen" />  
</head>
<body>
<a id="example1" href="images/pic.jpg"></a> 
</body>
Run Code Online (Sandbox Code Playgroud)

Den*_*ret 66

使用localStorage存储您打开页面的事实:

$(document).ready(function() {
    var yetVisited = localStorage['visited'];
    if (!yetVisited) {
        // open popup
        localStorage['visited'] = "yes";
    }
});
Run Code Online (Sandbox Code Playgroud)


Cli*_*des 12

您可以尝试使用HTML5s sessionStorage,它会在页面会话中持续一段时间.只要浏览器处于打开状态,页面会话就会持续,并且会在页面重新加载和恢复后继续存在.在新选项卡或窗口中打开页面将导致启动新会话.

sessionStorage.setItem("username","John");

https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Storage#sessionStorage

浏览器兼容性https://code.google.com/p/sessionstorage/兼容所有A级浏览器,包括iPhone或Android.http://www.nczonline.net/blog/2009/07/21/introduction-to-sessionstorage/