Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Закрытие Div'a через JS+jQuery с cookie (https://javascript.ru/forum/misc/28653-zakrytie-div%27-cherez-js-jquery-s-cookie.html)

falsenull 28.05.2012 11:34

Закрытие Div'a через JS+jQuery с cookie
 
Здравствуйте!

Задача такая: имеется div, который при нажатии на кнопку "растворяется", нужно сделать так, чтобы при нажатии на эту же кнопку создавался cookie, чтобы при последующем заходе на сайт этот div уже не показывался для юзера который нажал кнопку "закрыть".
P.S. без php можно обойтись?

Код:

CSS
Код:

.pane {
        opacity: 1;
        top: 50px;
        right: 0;
        color: #fff;
        background: #555;
        padding: 10px 10px 10px;
        position: absolute;
        border: 1px solid #fff;
        border-right: none;
        width: 260px;
        }

        .pane .delete {
        font-size: 12px;
        position: absolute;
        top: 6px;
        right: 6px;
        cursor: pointer;
        }

JavaScript + jQuery
$(document).ready(function(){ 
$(".pane .delete").click(function(){
$(this).parents(".pane").animate({ opacity: 'hide'}, 'slow');
							});	
						});


Если реализация без php возможна, помогите с кодом.

bot87 28.05.2012 17:12

<style>
input{text-align:center;
width:300px;
height:100px;}

</style>

</head>

<body>
<p id="block">Задача такая: имеется div, который при нажатии на кнопку "растворяется", нужно сделать так, чтобы при нажатии на эту же кнопку создавался cookie, чтобы при последующем заходе на сайт этот div уже не показывался для юзера который нажал кнопку "закрыть".</p>
<input type="button" value="ЗАКРЫТЬ" onclick="fun()"  />


<script>
function setCookie(name, value, expires, path, domain, secure) {
    if (!name || !value) return false;
    var str = name + '=' + encodeURIComponent(value);
     
    if (expires) str += '; expires=' + expires.toGMTString();
    if (path)    str += '; path=' + path;
    if (domain)  str += '; domain=' + domain;
    if (secure)  str += '; secure';
     
    document.cookie = str;
    return true;
}
 
function getCookie(name) {
    var pattern = "(?:; )?" + name + "=([^;]*);?";
    var regexp  = new RegExp(pattern);
     
    if (regexp.test(document.cookie))
    return decodeURIComponent(RegExp["$1"]);
     
    return false;
}
function fun(){
	document.getElementById('block').style.display='none'
	setCookie('blocked','none')
	
}


window.onload=function(){
	
	document.getElementById('block').style.display=getCookie('blocked')
	alert(getCookie('blocked'))
}


</script>


Часовой пояс GMT +3, время: 20:40.