我如何在这个jQuery片段中实现jQuery Cookie插件,以便在离开页面时保存切换的打开/关闭状态?
$(document).ready(function() {
$('a.toggle').click(function() {
var id = $(this).attr('name');
$('#module' + id).slideToggle('fast');
$('a.toggle[name='+id+']').toggle();
return false;
});
});
答案 0 :(得分:2)
只要在动画期间不关闭选项卡/窗口,就应该保存状态。如果你担心这一点,那就不难解决了。
$(function() {
$('a.toggle').click(function() {
var id = $(this).attr('name');
$('#module' + id).slideToggle(
'fast',
function() { set_cookie(this, 'module_' + id); }
);
$('a.toggle[name='+id+']').toggle(
'normal', // speed required to use callback
function() { set_cookie(this, 'link_' + id}
);
return false;
});
});
function set_cookie(target, name) {
var is_displayed = $(target).css('display') != 'none';
$.cookie(name, is_displayed, { expires: 30, path: '/' });
}