我正在使用以下代碼來生成一個內容區域,該區域在點擊時打開和關閉,同時加/減圖像也根據內容區域的狀態切換。我想要做的是添加一個jQuery Cookie,以節省內容區域的狀態 - 我將如何實現這一目標?小號將jquery cookie添加到內容切換
$(document).ready(function() {
$("a.toggle").click(function() {
var img = $(this).find("img"); //get a handle of the image tag inside title link
var src = $(img).attr("src"); //get the source of the image
//toggle the source of the image to show either plus/minus
if (src.endsWith("search_open.jpg"))
src = src.replace('search_open.jpg', 'search_close.jpg');
else
src = src.replace('search_close.jpg', 'search_open.jpg');
$(img).attr("src", src);
//get the title of the anchor tag which corresponds to the id of the content div
var content = $(this).attr("title");
$(content).toggle();
});
});
String.prototype.endsWith = function(str) {
return this.lastIndexOf(str) == this.length - str.length;
}
編輯:最後的代碼/解決方案
$(document).ready(function() {
$("a.toggle").each(function() {
var img = $(this).find("img");
var src = $(img).attr("src");
var content = $(this).attr("title");
var isVisible = $.cookie('content');
if (isVisible == 'true') {
$(content).show();
src = src.replace('search_open.jpg', 'search_close.jpg');
}
$(img).attr("src", src);
});
$("a.toggle").click(function() {
var img = $(this).find("img"); //get a handle of the image tag inside title link
var src = $(img).attr("src"); //get the source of the image
//toggle the source of the image to show either plus/minus
if (src.endsWith("search_open.jpg"))
src = src.replace('search_open.jpg', 'search_close.jpg');
else
src = src.replace('search_close.jpg', 'search_open.jpg');
$(img).attr("src", src);
//get the title of the anchor tag which corresponds to the id of the content div
var content = $(this).attr("title");
$(content).toggle();
$.cookie('content', $(content).is(':visible'));
});
});
String.prototype.endsWith = function(str) {
return this.lastIndexOf(str) == this.length - str.length;
}
謝謝 - 我使用jquery.cookie並使用它 - 我似乎沒有能夠將它集成到我的代碼。 – ss888
我還沒有改變檢查它,但這個想法是在示例中。如果您的內容的默認狀態處於隱藏狀態,它將起作用 – Samich
輝煌 - 不得不稍微調整你的代碼(最終代碼添加到原始問題) - 非常感謝,S – ss888