2012-03-02 5 views
0

私は2つのタブのセットを持っています。入れ子になったタブは、すべてのコンテンツを更新するsetIntervalによってリロードされます。ページが読み込まれると、それらのネストされたタブのクッキーは正常に設定されますが、リフレッシュが行われると、そのタブは消え、選択したタブは最初のページにジャンプします。 http://screencast.com/t/nAZlNXIBe [割り当て済み]タブの下にある[標準]タブをクリックすると、setIntervalを起動してそれらのタブを更新するときに[標準]タブにとどまると思います。ここで私が使用しているコードだ:jQueryタブajaxでの永続性

var $tabs2 = $('#nested').tabs({ cookie: { expires: 1, name: "nested_tabs" } }); 
setInterval(function() { 
    $('#tabs-1 .content').load('/dashboard/mine'); 
}, 30000); 

このコードは、基本的にはタブやクッキーを設定し、その後、リフレッシュがタブを含むその地域全体を、移入するために起こります。タブがAJAXでリロードされているので、それは壊れていますか?

答えて

0

[OK]を私はここに、それを考え出しましたコード:

var $tabs2 = $('#nested').tabs(); 
$tabs2.bind('tabsselect', function(event, ui) { 
    $.cookie('nested_tabs', ui.index); 
}); 
setInterval(function(){ 
    $.ajax({ url: '/dashboard/mine', success: function(html){ 
    $tabs2.tabs("destroy"); 
    $('#tabs-1 .content').html(html); 
    $tabs2 = $('#nested').tabs({ selected: $.cookie('nested_tabs') }); 
    $tabs2.bind('tabsselect', function(event, ui) { 
     $.cookie('nested_tabs', ui.index); 
    }); 
    }   
}); 
1

あなたのCookieの有効期限は1msで、変更してください。

まだ実行していない場合は、cookie pluginをロードする必要があります。jquery-uiファイルの直前に移動します。

あなたが試すことができます:

var $tabs2 = $('#nested').tabs({ cookie: { expires: 30000, name: "nested_tabs" } }); 
setInterval(function() {  
     $.ajax({ url: '/dashboard/mine', success: function(html){ 
      $tabs2.tabs("destroy"); 
      $('#tabs-1 .content').html(html); 
      $tabs2 = $('#nested').tabs({ cookie: { expires: 30000, name: "nested_tabs" } }); }   
     }); 
    }, 30000); 

を、私は、タブをリロードし、再構築、30秒ごとに破壊することは、CPU /帯域幅/ uxのために良いことはないだろう...

+0

私はクッキープラグインを持っています。私は1,300、3000000を試してみました。サブタブ(コンテンツ)がajaxでリフレッシュされていること、.tabs()コールが持続していないこと、次のようなものです(http://screencast.com/t/ – Magicmarkker

+0

これは内部アプリケーションなので、帯域幅はそれほど重要ではなく、6人のようにしか使用されません。ただし、コンテンツが更新されると、クッキーはまだ削除されています。クッキーをグローバルなvarにしてから、そのvarからクッキーを設定する方法がありますか?私はグローバルが悪いことを知っていますが、それは本当に私が見る唯一のものです。 .bind/.liveを残しておくことができない限り、それはどういうわけか – Magicmarkker

+0

クッキーが30秒間有効期限切れにならないようにコードを変更しました。リフレッシュレートと同じです... – JKirchartz