jQuery-可以类似于会话使用的函数?

jQuery-可以类似于会话使用的函数?,jquery,session,Jquery,Session,我有以下代码:- jQuery(document).ready(function() { jQuery('.remove-me').bind( "click", function() { jQuery('#booking-alert').fadeOut(200); }); }); 当用户单击“.remove me”元素时,这基本上会淡出一个小窗口 我想补充的是,如果用户决定隐藏div,它知道用户以前单击过,因此不再显示该元素 所以jQuery('#预订提醒').

我有以下代码:-

jQuery(document).ready(function() {
    jQuery('.remove-me').bind( "click", function() {
        jQuery('#booking-alert').fadeOut(200);
    });
});
当用户单击“.remove me”元素时,这基本上会淡出一个小窗口

我想补充的是,如果用户决定隐藏div,它知道用户以前单击过,因此不再显示该元素

所以
jQuery('#预订提醒').hide()


这可以使用会话来完成,还是有其他方法来完成?

您可以将此首选项存储在浏览器的localStorage中

您可以使用以下方法检查浏览器的本地存储能力:

function supports_html5_storage() {
  try {
    return 'localStorage' in window && window['localStorage'] !== null;
  } catch (e) {
    return false;
  }
}
然后可以使用本地存储的getter&setter来存储和检索信息

//Getter
var foo = localStorage.getItem("bar");

// Setter
localStorage.setItem("bar", foo);
您可以在此处找到有关HTML5存储的更多信息:

所以在你的情况下,你可以这样做:

 $(document).ready(function() {
    $('.remove-me').bind( "click", function() {
         jQuery('#booking-alert').fadeOut(200);
         localStorage.removeme = true;

     });


    //code to not show it in the first place:
    if (localStorage.removeme)
    {
       //something to hide the element if it was previously removed:
       $('#booking-alert').css("display","none");  
    }

 });

工作提琴:

您可以通过cookies来完成这一点,cookies不需要HTML5支持。如果你还没有这个插件,你可以下载它

//在JQuery库之后包含插件
jQuery(文档).ready(函数(){
如果($.cookie('bookingalert')!='true'){
jQuery('.remove me').bind(“单击”,函数(){
$.cookie('bookingalert','true');//在用户单击时创建cookie
jQuery(“#预订警报”).fadeOut(200);
});
}
});

谢谢,不过我刚刚尝试了上述方法,但似乎没有“隐藏”#当我刷新页面@JanRI将
true
更改为一个值(例如“1”)时,预订警报开始工作。非常感谢你!修改了我的代码并添加了一个提琴,你能接受这个答案吗?因为它可能会帮助其他人。
//include plugin after the JQuery library
<script src="/path/to/jquery.cookie.js"></script>

jQuery(document).ready(function() {
    if ($.cookie('bookingalert') != 'true') {
        jQuery('.remove-me').bind( "click", function() {
            $.cookie('bookingalert', 'true'); //create the cookie when user clicks
            jQuery('#booking-alert').fadeOut(200);
        });
    }
});