我已经实现了以下功能,以在我的站点上接受cookie模式。如果我接受,它将正常工作,在我关闭浏览器之前,不会在刷新或在新选项卡中打开站点。如果我关闭并重新打开浏览器,那么打开的站点将再次接受cookie模式显示。
我添加了以下代码,
<div class="modal fade" id="cookieModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-body">
<div class="notice d-flex justify-content-between align-items-center">
<div class="cookie-text">This website uses cookies to personalize content and analyse traffic in
order to offer you a better experience.</div>
<div class="buttons d-flex flex-column flex-lg-row">
<a href="javascript:;" class="btn btn-blue mr-2 accept-cookies"
data-dismiss="modal">Accept</a>
<a href="javascript:;" class="btn btn-blue mr-2 close-cookies"
data-dismiss="modal">Reject</a>
</div>
</div>
</div>
</div>
</div>
</div>
if (document.cookie.indexOf("accepted_cookies=") < 0) {
$('#cookieModal').modal('show');
}
$('.accept-cookies').on('click', function () {
document.cookie = "accepted_cookies=yes;"
$('#cookieModal').modal('hide');
})
$('.close-cookies').on('click', function () {
$('#cookieModal').modal('hide');
})
2条答案
按热度按时间fsi0uk1n1#
问题是如果你不设置
expire
一块饼干,它会是session
默认情况下。因此,当您关闭并重新打开浏览器时,它将被丢弃。要设置过期日期,可以使用以下代码:
kg7wmglp2#
我必须实现相同的代码,并且在机器未关闭之前,代码正常工作。
一旦我关闭并重新启动我的机器并打开网站,然后模式弹出窗口再次显示,即使我已接受cookies。