2012-01-30 1 views
1

私はページ状態を維持するためにCookieを使用するにはどうすればよいですか?

<li><a href="#">Man</a> 
    <ul class="sub_menu"> 
     <li><a href="mcaps">Caps</a></li> 
     <li><a href="#">Shirts</a></li> 
     <li><a href="#">Tshirts</a></li> 
     <li><a href="#">Jackets</a></li> 
     <li><a href="#">Jeans</a></li> 
     <li><a href="#">Shorts</a></li> 
     <li><a href="#">Footwear</a></li> 
    </ul> 
</li> 

<li><a href="#">Woman</a> 
    <ul class="sub_menu"> 
     <li><a href="#">Caps</a></li> 
     <li><a href="#">Sunglasses</a></li> 
     <li><a href="#">Shirts</a></li> 
     <li><a href="#">Tshirts</a></li> 
     <li><a href="#">Dresses</a></li> 
     <li><a href="#">Jackets</a></li> 
     <li><a href="#">Jeans</a></li> 
     <li><a href="#">Purse</a></li> 
     <li><a href="#">Handbags</a></li> 
     <li><a href="#">Footwear</a></li> 
    </ul> 
</li> 

今私のjQueryのコードで、私はこれらのメニューでウェブサイトを、画像を取得し、私はページを更新すると、ユーザーが今すぐman>mcaps

$(document).ready(function() { 
    $('ul.sub_menu a').click(function(e) { 
     e.preventDefault(); 
     var txt = $(this).attr('href'); 
     $.ajax({ 
      type: "POST", 
      url: "thegamer.php", 
      data:{ send_txt: txt }, 
      success: function(data){ 
       $('#container').fadeOut('8000', function(){ 
        $('#container').html(data); 
        $('#container').fadeIn('8000'); 
       }); 
      } 
     }); 
    }); 
}); 

をクリックすると言っていたが、それはすべてに行き、インデックスのページが表示されます、私はクッキーで動作する必要がありますが、私はどのようにページを維持するためにそれらを使用するのですか?

ユーザーがWoman>jeansをクリックしたときに、Cookieを設定してページの更新時に消失する必要があるようになりました。

詳細なコードは便利です。あなたが与えられたキーに応じてクッキーを設定読んで、削除するために使用することができます(ほとんどの$ .cookieと呼ばれる)メソッドがあります可能なjQueryのクッキーのプラグインの1

  • を含める必要があります

  • 答えて

    1

    まず、this pluginをダウンロードしてページに追加する必要があります。その作業

    $(document).ready(function() { 
        // set the content on page load to match the last clicked link 
        setContainerHtml($.cookie("activeElementHref")); 
    
        // set the content on link click 
        $('ul.sub_menu a').click(function(e) { 
         e.preventDefault(); 
         var txt = $(this).attr('href'); 
         $.cookie("activeElementHref", txt) 
         setContainerHtml(txt); 
        }); 
    }); 
    
    function setContainerHtml(href) { 
        $.ajax({ 
         type: "POST", 
         url: "thegamer.php", 
         data:{ send_txt: href }, 
         success: function(data){ 
          $('#container').fadeOut('8000', function(){ 
           $('#container').html(data); 
           $('#container').fadeIn('8000'); 
          }); 
         } 
        }); 
    } 
    
    +0

    親愛なる@Roryありがとうしかし、私は、バックグラウンド(index.htmlのは)私は、インデックスを表示したいいけないしばらくしてdisapearsのためにフラッシュされ、リフレッシュをクリックしたとき:

    次に、このようにコードを変更します。 htmlのときには別のリンクとclikをリフレッシュするだけで、クッキーが動作しているかどうかを確認します – sajid

    +0

    解決済みThanx Once Againここでもとても役立ちます – sajid

    1
    1. (お好み)

    この

    $.cookie("mykey", "10"); //set value of cookie to 10 
    var mycookie = $.cookie("mykey"); // get cookie value or NULL if not set 
    $.cookie("mykey", null); // unset = delete cookie 
    

    ような何かあなたがオンデマンド

    0で探索可能性がある(有効期限などのように)より多くの設定があります。