0

私はまだjqueryにかなり慣れていないので、このslideToggleコンテナーを取得しましたが、コンテナーが非表示になっているかどうかにかかわらず、Cookieを保存したいので、ページを更新しても現在の状態を維持します。

jquery cookie プラグインのことは聞いたことがありますが、正直よくわかりませんでした。:(

誰でも私を助けることができますか?

これまでの私のコードは非常に単純です。

$(function(){
 $("#hideslide").click(function(){
  $(this).next().slideToggle();
 });
});

どんな助けでも大歓迎です

4

2 に答える 2

3

jQuery Cookie プラグイン (ここにあります) は、jQuery で Cookie を使用する最も簡単な方法です。

Cookie を設定するには、次のようにします。

$.cookie("name", "content");

Cookie の取得も同様に簡単です。

$.cookie("name");

したがって、Cookie が設定されている場合は、ページの読み込みを確認する必要があります。

if($.cookie("name") != null) {
    // Cookie set, action here
}

また、トグルする項目をクリックすると、Cookie が設定されているかどうかを確認します。設定されている場合は削除し、設定されていない場合は設定します。

if($.cookie("name") != null) {
    $.cookie("name", null); (null as value will remove the cookie)
}
else {
    $.cookie("name", "content");
}

私はこのプラグインを自分で使用していますが、必要なのはこれだけです。簡単。

于 2012-07-03T16:24:06.093 に答える
0

クライアント ブラウザのターゲットが IE8+ の場合は、これを使用できますし、使用する必要があると思いますlocalStorage

localStorage.setItem('mySlideState', "open");

次にテストします。

if(localStorage.getItem('mySlideState') == 'open') {
    //do stuff
}

これは、slideToggle のコールバックを通じて実現できます。

$('#highSlide').slideToggle(function () {
    //set localStorage to value here
});

Mozilla ドキュメント: https://developer.mozilla.org/en/DOM/Storage

于 2012-07-03T16:18:57.617 に答える