我在一个页面上有多个手风琴。默认状态为打开状态。当一个人导航回那个页面时,我希望能够记住所有手风琴的状态。
我试图配置其他代码示例,但无法让其他人为我的工作。有人可以帮忙吗?
Jquery脚本:
jQuery(document).ready(function($) {
$( ".accordion" ).accordion({
collapsible: true,
activate: function(event, ui) {
$('h6', this).each(function() {
$(this).text($(this).text().replace('Close', 'Open'));
});
ui.newHeader.text(ui.newHeader.text().replace('Open', 'Close'));
}}).
find('h6').text(function(i, value) { return value + ' - Open'; }).
filter('*').text(function(i, value) { return value.replace('Open',
'Close'); });
});
HTML:
<div class="accordion">
<h6 align="right"></h6>
<div>
--Content Here--
</div>
</div>
答案 0 :(得分:1)
您需要设置Cookie。过去,有许多与jQuery相关的cookie相关插件,或者您可以自己动手或使用不同的第三方解决方案。我使用过Mozilla Foundation&#34; docCookies&#34;效果很好。
假设您选择后者,您必须首先在网页的HEAD元素中包含脚本:
<script src="/path/to/docCookies.js"></script>
在此之后,您需要将调用添加到打开/关闭手风琴的事件处理程序。
原型是:
docCookies.setItem(name, value[, end[, path[, domain[, secure]]]])
因此,对此的简单调用可能是(使用虚构的名称和整数值进行打开/关闭):
docCookies.setItem("accordion1", 1); // accordion 1 is open
docCookies.setItem("accordion2", 0); // accordion 2 is closed
正如我从上面的例子中看到的那样,你需要把它放在你的#34;激活&#34;功能
当您的访客第一次到达时,您必须检查服务器端(PHP?或w / e ...)是否存在&#34; accordion1&#34; (2,3等)cookie,如果设置为&#39; 1&#39;,则在页面加载时将手风琴显示为打开。