Javascript cookie 永远关闭
Javascript cookie dismiss forever
我有模态弹出窗口询问用户是否愿意订阅我的时事通讯。如果用户关闭模式,我不希望它再次出现。使用我下面的代码,弹出窗口每天多次显示。我需要添加什么才能使弹出窗口关闭后不会再次出现?
//custom.js
if (!readCookie("close_subcribeModal")) {
function subcribeModal() {
$("#subcribeModal").modal("show");
}
setTimeout(function () {
subcribeModal();
}, 5000);
}
网页:
@if(!isset($_COOKIE['close_subcribeModal']) && @$_COOKIE['close_subcribeModal'] != "1")
<div id="subcribeModal" tabindex="-1" role="dialog" aria-labelledby="subcribeModalLabel" aria-hidden="true">
<div role="document">
<div class="modal-content">
<button type="button" id="subcribeModal__close" class="cancel" data-dismiss="modal" aria-label="Close"></button>
<div class="modal-body">
<h2 class="title">Welcome</h2>
<p>Would you like to receive our weekly newsletter?</p>
<x-mail.newsletter-subscription />
</div>
</div>
</div>
</div>
@endif
看起来您正在使用 Bootstrap,当模态 window 被隐藏(或关闭)时,事件 hidden.bs.modal
被触发。
因此,如果事件发生,我们会创建一个 cookie(将其添加到您的视图底部)
$("#subcribeModal").on('hidden.bs.modal', function() {
Cookies.set('modalShowed','active');
});
将if (!readCookie("close_subcribeModal"))
更改为if(Cookies.get('modalShowed') != 'active')
并在您的视图中删除此 if 语句 @if(!isset($_COOKIE['close_subcribeModal']) && @$_COOKIE['close_subcribeModal'] != "1")
。
我有模态弹出窗口询问用户是否愿意订阅我的时事通讯。如果用户关闭模式,我不希望它再次出现。使用我下面的代码,弹出窗口每天多次显示。我需要添加什么才能使弹出窗口关闭后不会再次出现?
//custom.js
if (!readCookie("close_subcribeModal")) {
function subcribeModal() {
$("#subcribeModal").modal("show");
}
setTimeout(function () {
subcribeModal();
}, 5000);
}
网页:
@if(!isset($_COOKIE['close_subcribeModal']) && @$_COOKIE['close_subcribeModal'] != "1")
<div id="subcribeModal" tabindex="-1" role="dialog" aria-labelledby="subcribeModalLabel" aria-hidden="true">
<div role="document">
<div class="modal-content">
<button type="button" id="subcribeModal__close" class="cancel" data-dismiss="modal" aria-label="Close"></button>
<div class="modal-body">
<h2 class="title">Welcome</h2>
<p>Would you like to receive our weekly newsletter?</p>
<x-mail.newsletter-subscription />
</div>
</div>
</div>
</div>
@endif
看起来您正在使用 Bootstrap,当模态 window 被隐藏(或关闭)时,事件 hidden.bs.modal
被触发。
因此,如果事件发生,我们会创建一个 cookie(将其添加到您的视图底部)
$("#subcribeModal").on('hidden.bs.modal', function() {
Cookies.set('modalShowed','active');
});
将if (!readCookie("close_subcribeModal"))
更改为if(Cookies.get('modalShowed') != 'active')
并在您的视图中删除此 if 语句 @if(!isset($_COOKIE['close_subcribeModal']) && @$_COOKIE['close_subcribeModal'] != "1")
。