2012-03-22 10 views
0

jQuery Cycleを使用して、長いメニューを5つのアイテムチャンクまたはパネルに5つのアイテム= 1パネルにページ設定しています。私は長いリストをスライスするコードを手に入れました。そして、jQuery Cycleは今リストをページングしています。jQuery - メニュー位置を記憶するためにクッキーを使用する

しかし!私は、リスト項目をクリックすると、どのパネルにいたかを「覚えている」ためにクッキーを使用する必要があります。 IE:Panel2の項目をクリックすると、ページがロードされ、メニューが再びPanel1に返されます。

jQueryサイクルはオプションとしてstartingSlideを必要とします。 Cookieを使用して、現在のパネルを設定するにはどうすればよいですか?次に、jQueryサイクルにこのオプションをstartingSlideとして渡すにはどうしたらいいですか?

例フィドル:最後にhttp://jsfiddle.net/saltcod/eayZq/2/

は、私のjQueryのサイクルのコードは次のようになります:

$('.list').cycle({ 
    fx: 'scrollVert', 
    speed: 'fast', 
    timeout: 0, 
    prev: '.back', 
    next: '.more', 
    startingSlide = 'panel-x-that-i-just-clicked-on' 
}); 

誰もが私はパネル番号「に沿って通過」するためにクッキーを使用することができます方法を知っています次のページに移動しますか?

+0

私が誤解しない限り、リンクがページを再読み込みしないようにしないでください。私が最後に考えたのは、クッキーを使うことです。 –

答えて

0

クリックがページを再読み込みしないようにしてください。ここで

あなたは、各liの周りに追加のリンクを持つ例です。

http://jsfiddle.net/jtbowden/ALsHA/1/

あなたがリンクをクリックすると、ページがリロードされません、クリックハンドラからので、私はreturn false;。これは、同様に、ハンドラでe.preventDefault()をやってと同じです:

$('li a').on('click', function(e) { 
    e.preventDefault(); // This 
    alert('You clicked: '+$(this).text()); 
    return false; // Or this 
}); 

return false;はもう少しありませんが、それはまた、ページをリロードからのクリックを防ぐことができます。

+0

ありがとうございました。リストは実際にはメニューであり、各項目は異なるページであり、新しいページロードが必要です。 – saltcod

関連する問題