- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 jQuery Accordion,并且在一个页面上有两个 Accordion。我想将每个 Accordion 的选定索引存储在 cookie 中。为此,我有以下代码(引用了 jquery.cookie.js 库)。
function accordionsInitAll() {
$(document).ready(function () {
accordionInit("#accordion1");
accordionInit("#accordion2");
});
}
function accordionInit(sAccordion) {
var accordion = $(sAccordion);
var index = $.cookie(sAccordion);
var active;
if (index !== null) {
active = accordion.find("h3:eq(" + index + ")");
} else {
active = 0;
}
$(sAccordion).accordion(
{
active: active,
change: function (event, ui) {
var index = $(this).find("h3").index(ui.newHeader[0]);
$.cookie(sAccordion, index);
}
});
}
每个 Accordion 部分都包含引用与 jQuery 所在页面相同的链接(具有不同的参数)。这些功能在某些状态被保存的情况下工作。问题是,这种行为似乎是随机的。有时它工作得很好,有时事件元素cookie在它应该有值时为null,有时选择的索引在两个 Accordion 之间切换。
我很困惑,我唯一能想到的是这是一个闭包问题,一些变量没有被正确捕获。
这是一个关闭问题,还是我有其他错误导致了这个问题?
谢谢,埃里克
用溶液编辑 11/510
原来的问题是,出于某种原因,我使用的 cookie 库有时会多次设置相同的 cookie,导致出现两个 cookie 值具有完全相同的键的情况。 cookie 权限顺序与读取顺序不同,导致奇怪的行为。
一旦我将 cookie 库切换到 http://code.google.com/p/cookies/我不再有任何问题。感谢所有提供帮助的人!
最佳答案
已更新
$(function() {
var accordions = ['dataAccordion', 'regionAccordion'];
var index,cookie;
$.each(accordions,function(i, item) {
cookie = $.cookie(item);
index = (null !== cookie) ? parseInt(cookie) : 0;
$acdn = $('#' + item);
$acdn.accordion({
autoHeight: false,
fillSpace: false,
clearStyle: true,
active: index,
change: function(event, ui) {
index = $(this).find("h3").index(ui.newHeader[0]);
$.cookie(this.id, index, {
expires: 10
});
}
});
});
});
- NOTE: the use of
parseInt()
关于jQuery Accordion 的 JavaScript 关闭问题(我相信),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4102139/
我正在使用 PHPMailer 从我的脚本中通过 SMTP 发送电子邮件。有问题的电子邮件实际上是使用电子邮件到 SMS 网关的手机号码。现在,理想情况下,我想建立一个大的密件抄送列表,以一批发送所有
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题? Update the question所以它是on-topic对于堆栈溢出。 9年前关闭。 Improve this que
我是一名优秀的程序员,十分优秀!