2012-04-27 7 views
3

クッキーの追加に問題があります。いくつかの答えを読んでください。しかし、あなたが以前にそれらと仕事をしたことがないかどうかは分かりません。クッキーの追加ボタンのヒット

私が基本的にしたいのは、誰かが指定されたボタンをクリックした場合にクッキーを追加することです。たとえば、人が「好きなボタン」をクリックした場合、彼が前に出て行ったり、ページをリフレッシュしたり、クッキーが数日後に削除されても、隠されたコンテンツが表示されます。私は、次のされたコンテンツを非表示にするために使用何

HTML:

<div id="fd"> 
    <p>Button from below will become active once you hit like button!</p> 
    <div id="get-it"> 
     <a class="button"><img src="img/get-button.png"></a> 
    </div> 
</div> 
<div id='feedback' style='display:none'></div> 

のjavascript:私はrefresを打つ場合は

FB.Event.subscribe('edge.create', function (response) { 
    $('#feedback').fadeIn().html('<p>Thank you. You may proceed now!</p><br/><div id="get-it"><a class="button2" href="pick.html"><img src="img/get-button.png"></a></div>'); 
    $('#fd').fadeOut(); 
}); 

hを押すか、コンテンツページを前後に移動すると、再び非表示になります。これがボタンヒットにクッキーを追加したい理由です。いくつかの説明やサンプルコードを私に与えることができる人は誰ですか?ありがとうございました。

答えて

12

jQuery-cookie pluginを使用することをおすすめします。以下に使用例を示します。

// Create a cookie 
$.cookie('the_cookie', 'the_value'); 

// Create expiring cookie, 7 days from then: 
$.cookie('the_cookie', 'the_value', { expires: 7 }); 

// Read a cookie 
$.cookie('the_cookie'); // => 'the_value' 
$.cookie('not_existing'); // => null 

// EDIT 
// Attaching to a button click (jQuery 1.7+) and set cookie 
$("#idOfYourButton").on("click", function() { 
    $.cookie('the_cookie', 'the_value', { expires: 7 }); 
}); 

// Attaching to a button click (jQuery < 1.7) and set cookie 
$("#idOfYourButton").click(function() { 
    $.cookie('the_cookie', 'the_value', { expires: 7 }); 
}); 
+0

うん、私は答えの質問の一つでこれを見た。私が言及したように理解していないことは、ボタンヒットでそれをどのように統合するかです。私は本当に苦労しています。 – dvLden

+0

@NenadNovakovic、「EDIT」とマークされた最後の例を参照してください。正直言って、あなたがイベントハンドラに接続するのに苦労しているのであれば、いくつかのJSチュートリアルを行う必要があります。 –

+0

素晴らしい。有難うございます。数分、試してみてください。私はそれが解決された問題だと思う。それがあればそれをマークします! – dvLden

2

クッキーの代わりにlocalStorageを使用することをお勧めします。

+0

「localStorage」をサポートしていないブラウザはどうなりますか? –

+0

これは有効な質問です。 localStorageは広くサポートされており、クッキーよりも優れていますが、より広範なブラウザバージョンをターゲットにしている場合、jQueryクッキーはさらに広くなります。 –

+0

私はlocalstorageもまたセッション(1回)またはローカル(永遠)にすることができるsayin 'を参照してください...私はクッキーなどの5日間を言うことができるものが必要です... – dvLden

関連する問題