2010-01-02 59 views
1

如何將jQuery Cookie插件實現到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; 
    }); 
}); 

回答

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: '/' }); 
}