Javascript 在按钮上显示/隐藏div单击并保存cookie
我使用此javascript代码进行cookies和显示/隐藏Javascript 在按钮上显示/隐藏div单击并保存cookie,javascript,html,cookies,onclick,show-hide,Javascript,Html,Cookies,Onclick,Show Hide,我使用此javascript代码进行cookies和显示/隐藏 $(document).ready(function () { if (Boolean(readCookie('hide'))) { $('.pop-up').hide(); $('.pop-up').fadeOut(1000); } $('.close-button').click(function (e) {
$(document).ready(function () {
if (Boolean(readCookie('hide'))) {
$('.pop-up').hide();
$('.pop-up').fadeOut(1000);
}
$('.close-button').click(function (e) {
$('.pop-up').fadeOut(700);
$('#overlay').removeClass('blur-in');
$('#overlay').addClass('blur-out');
e.stopPropagation();
createCookie('hide', true, 1)
return false;
});
function createCookie(name, value, days) {
if (days == 1) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
var expires = "; expires=" + date.toGMTString();
}
else var expires2 = "";
document.cookie = name + "=" + value + "; expires=" + expires + "; path=/";
// $.cookie(name, value, { expires: days });
}
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') c = c.substring(1, c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
}
return null;
}
function eraseCookie(name) {
createCookie(name, "", -1);
}
});
$(文档).ready(函数(){
if(布尔值(readCookie('hide')){
$('.pop-up').hide();
$('.pop-up').fadeOut(1000);
}
$('.close按钮')。单击(函数(e){
$(“.pop-up”).fadeOut(700);
$('#overlay').removeClass('blur-in');
$('#overlay').addClass('blur-out');
e、 停止传播();
createCookie('hide',true,1)
返回false;
});
函数createCookie(名称、值、天数){
如果(天数==1){
变量日期=新日期();
date.setTime(date.getTime()+(天*24*60*60*1000));
var expires=“;expires=“+date.togmString();
}
否则var到期2=“”;
document.cookie=name+“=”+value+“expires=”+expires+“path=/”;
//$.cookie(名称、值,{expires:days});
}
函数readCookie(名称){
变量nameEQ=name+“=”;
var ca=document.cookie.split(“;”);
对于(变量i=0;i
我需要10个按钮在同一页上,但我不能。因为如果我单击关闭按钮(X)所有按钮都会隐藏。我需要一个一个的隐藏
我尝试更改名称和值,但未成功
这是HTML
<div id="overlay" class="cover blur-in">
<div class="content"></div>
</div>
<div class="row pop-up">
<div class="box small-6 large-centered">
<a href="#" class="close-button">✖</a>
<h3 class="popup">Welcome</h3>
<p>info </p>
<p>info</p>
<a href="#" class="button">press for facebook</a>
</div>
</div>
欢迎
信息
信息
您的JSFIDLE似乎不起作用(空白),但总体思路是使用
close\u按钮类循环所有元素,并为每个元素添加一个侦听器,如下所示:
$('.close-button').each(function(i, obj) {
$(this).click(function (e) {
$('.pop-up').eq(i).fadeOut(700);
$('#overlay').removeClass('blur-in');
$('#overlay').addClass('blur-out');
e.stopPropagation();
return false;
})
});
在jsfiddle上没有问题。我想你正在点击X按钮并运行。尝试CTRL+SHIFT+N,然后重试或删除cookie。还有你的代码,是什么改变了这一点?它为每个关闭按钮添加了一个单独的侦听器,这样按下一个按钮就不会全部关闭。