jQuery-切换元素并用cookie保存
jQuery - Toggle element and save it with cookie
我正在尝试使用jQuery Cookie插件和jQuery切换函数:
每当有人切换#launchpad,
时,我都想得到它的当前状态。
例如,如果有人切换它,它变成隐藏的,我想提醒它现在是隐藏的,反之亦然。
这是我当前的代码:
jQuery:
$(function(){
if($.cookie){
//By default, if no cookie, just display.
$("#launchpad").toggle(!(!!$.cookie("toggle-state")) || $.cookie("toggle-state") === 'true');
}
$('#toggle-launchpad').on('click', function(){
$("#launchpad").toggle(
if($(this).is(":visible")){
alert("visible!!");
}else{
alert("not visible");
}
);
//Save the value to the cookie for 1 day; and cookie domain is whole site, if ignore "path", it will save this cookie for current page only;
$.cookie("toggle-state", $("#launchpad").is(':visible'), {expires: 1, path:'/'});
});
});
HTML:
<div id="launchpad">
<div id="toggle-launchpad" title="Toggle Launchpad" style="display: ;">
<i class="fa fa-plus"></i>
</div>
</div>
我想我不能在toggle function
中使用if function
。有人能解决我的问题吗?
如果你这样做:
$("#launchpad").toggle(400, function() {
if($(this).is(":visible")){
alert("visible!!");
}else{
alert("not visible");
}
});
该代码将在CCD_ 4功能完成时执行。请注意,toggle
函数是异步的,因此您的$.cookie
调用可能会在div隐藏/显示之前被调用。尝试:
$("#launchpad").toggle(400, function() {
$.cookie("toggle-state", $("#launchpad").is(':visible'), {expires: 1, path:'/'});
});
并不是说400是动画以毫秒为单位的(默认)时间。请参阅文档。
编辑:如果你的评论是关于你代码的第一部分,我会把它写为:
if ($.cookie && $.cookie("toggle-state")) && $.cookie("toggle-state") === 'false') {
$("#launchpad").hide();
}
这假设div在默认情况下是可见的(即不被CSS隐藏)
相关文章:
- 按下按钮时保存cookie
- 如何在Javascript中将单选按钮值保存到cookie中
- Cookie 在 Spotify (Javascript) 中调用 ajax 后未保存
- 单击时将类添加到 ancer 标签并使用 cookie 保存
- Javascript 不会保存 cookie
- 大规模保存cookie的最佳方式是什么
- 如何将jQuery克隆的文本输入保存到cookie或html5存储中
- Cookie,用于保存包括一个变量在内的多个值
- 在js中有一个cookie保存序列化的svgs
- Cookie 保存/读取无法按预期工作
- 如何在 javascript 的信息窗口中使用 cookie 保存复选框状态
- Javascript使用javascript按钮更改CSS页面,并根据cookie保存
- jquery:使用cookie保存拖放位置
- 在网页中使用javascript中的cookie保存用户选择的背景图像
- 表单值在提交后作为cookie保存&页面更改
- jQuery-切换元素并用cookie保存
- 在实现cookie保存状态到JQuery切换时遇到麻烦
- 如何在游戏中使用cookie保存分数?
- NPM tough-cookie:保存一个cookie,然后转储它
- Javascript cookie保存和加载