【发布时间】:2011-04-16 22:32:30
【问题描述】:
我的脚本:
function ShowHide(){
$("#news1").animate({"height": "toggle"}, { duration: 250 });
}
问题:
我怎样才能在其中插入一个cookie,这样当我隐藏它时,它会在刷新页面后保持隐藏状态。
感谢您的帮助。
【问题讨论】:
标签: jquery cookies toggle show-hide
我的脚本:
function ShowHide(){
$("#news1").animate({"height": "toggle"}, { duration: 250 });
}
问题:
我怎样才能在其中插入一个cookie,这样当我隐藏它时,它会在刷新页面后保持隐藏状态。
感谢您的帮助。
【问题讨论】:
标签: jquery cookies toggle show-hide
Toggle 似乎在 0 和“正常”值之间来回设置高度(来源:http://api.jquery.com/animate/)。
作为函数的最后一行,也许你可以添加:
if ( $('#news1').css('height')==0 )
# set cookie here with jquery cookie plugin or browser mechanism
# see http://stackoverflow.com/questions/1458724/how-to-set-unset-cookie-with-jquery
然后在文档准备好之前添加适当的代码:“如果我检测到 cookie 上次说它是隐藏的,就不要显示它”
编辑:虽然如果你经常这样做,我会推荐一个对此有良好支持机制的框架或插件
【讨论】:
对于 cookie 操作,您可以使用 jQuery.cookie
代码将变为:
function ShowHide(){
$("#news1").animate({"height": 0}, 250, function() {
//this is a callback function. set the cookie here
});
}
您还需要另一个 js 代码来检查 cookie 是否设置为隐藏 div 并相应地隐藏它。最好在页面加载时执行此代码,甚至在 dom 就绪时执行此代码。
【讨论】: