尝试使用JS Cookie制作一个jQuery cookie隐藏/显示框,但我不知道怎么做不起作用。该框根本不会显示。我正在使用Shopify。
#pop-up {
display: none;
}
Jquery:
<script type='text/javascript'>//<![CDATA[
$(window).load(function(){
// if no cookie
if (!$.cookie('alert')) {
$( "#pop-up" ).show();
$("#hide").click(function() {
$( "#pop-up" ).slideUp( "slow" );
// set the cookie for 24 hours
var date = new Date();
date.setTime(date.getTime() + 24 * 60 * 60 * 1000);
$.cookie('alert', true, { expires: date });
});
}
});//]]>
</script>
其余的:
<div id="pop-up">
<div id="center" class="box">
40% off today only<br>
<a id="hide" href="#">OK, thanks!</a>
</div>
</div>
答案 0 :(得分:3)
它不起作用,因为您只能在Cookie中存储字符串。您存储字符串"true"
而不是布尔值true
。
尝试以下代码,我将检查替换为!= "true"
。
<script type='text/javascript'>//<![CDATA[
$(window).load(function(){
// if no cookie
if ($.cookie('alert')!="true") {
$( "#pop-up" ).show();
$("#hide").click(function() {
$( "#pop-up" ).slideUp( "slow" );
// set the cookie for 24 hours
var date = new Date();
date.setTime(date.getTime() + 24 * 60 * 60 * 1000);
$.cookie('alert', "true", { expires: date });
});
}
});//]]>
</script>
工作的jsfiddle:http://jsfiddle.net/bqam0qb4/1/