【发布时间】:2014-11-20 11:23:21
【问题描述】:
我有一个 jQuery UI 手风琴,我需要记住它的状态(上次打开哪个标题)。
这是我的尝试:
var storedActive = localStorage.getItem("storedActive");
if (isNaN(storedActive)){
storedActive = false;
}
console.log(storedActive);
jQuery('#accordion').accordion({
heightStyle: "content",
collapsible: true,
header: 'h4',
active: storedActive,
activate: function(event, ui){
if(ui.newHeader.context){
storedActive = ui.newHeader.context.id.slice(-1); //getting id of clicked header
}else{
storedActive = false;
}
localStorage.setItem("storedActive", storedActive);
}
});
第 5 行中的这个console.log(storedActive) 证明了最后点击的标题的值被正确地记住和恢复了。问题是手风琴没有打开任何标题。
奇怪的是,当我手动输入值storedActive 时,手风琴会按应有的方式打开标题。只是从localStorage恢复值时出现了一些问题。
【问题讨论】:
标签: javascript jquery jquery-ui local-storage