在用户浏览器中存储显示模态 cookie
Store reveal modal cookie in user browser
我目前正在使用 Zurb 基础框架,我想创建将在页面加载时显示的模态。我希望这个模式在用户浏览器中存储一个 cookie,这样如果他们之前访问过该网站,他们将不会再次显示相同的模式。
以下是我尝试使用 jQuery 实现此目的的方法,它用于启动基础。请注意,我正在使用 jQuery 无冲突包装器,因为我正在使用 word press 实现它。
jQuery(document).ready(function($){
$('#myModal2').foundation('reveal', 'open');
var shown = $.cookie('dialogShown');
if (!shown) {
setTimeout(function() {
$('#myModal2').foundation({modal: true});
$.cookie('dialogShown', 'true');
}, 2000);
}});
这段代码没有给我想要的输出,模式在页面加载时一遍又一遍地打开,没有存储 cookie,如果有人能帮我解决这个问题,我将不胜感激。谢谢
您粘贴的代码与您编写的完全相同。
文档准备好后,打开显示模块(查看更多:http://foundation.zurb.com/docs/v/4.3.2/components/reveal.html)
然后是你的曲奇魔法。如果您想要上述行为,则必须在打开模式之前检查 cookie。 :)
如果有人想知道我已经发布了一个使用 jQuery cookies 插件的解决方案。
jQuery(document).ready(function($) {
if ($.cookie('modal_shown') == null) {
$.cookie('modal_shown', 'yes', { expires: 7, path: '/' });
$("#myModal2").foundation('reveal', 'open');
}
});
我目前正在使用 Zurb 基础框架,我想创建将在页面加载时显示的模态。我希望这个模式在用户浏览器中存储一个 cookie,这样如果他们之前访问过该网站,他们将不会再次显示相同的模式。
以下是我尝试使用 jQuery 实现此目的的方法,它用于启动基础。请注意,我正在使用 jQuery 无冲突包装器,因为我正在使用 word press 实现它。
jQuery(document).ready(function($){
$('#myModal2').foundation('reveal', 'open');
var shown = $.cookie('dialogShown');
if (!shown) {
setTimeout(function() {
$('#myModal2').foundation({modal: true});
$.cookie('dialogShown', 'true');
}, 2000);
}});
这段代码没有给我想要的输出,模式在页面加载时一遍又一遍地打开,没有存储 cookie,如果有人能帮我解决这个问题,我将不胜感激。谢谢
您粘贴的代码与您编写的完全相同。
文档准备好后,打开显示模块(查看更多:http://foundation.zurb.com/docs/v/4.3.2/components/reveal.html)
然后是你的曲奇魔法。如果您想要上述行为,则必须在打开模式之前检查 cookie。 :)
如果有人想知道我已经发布了一个使用 jQuery cookies 插件的解决方案。
jQuery(document).ready(function($) {
if ($.cookie('modal_shown') == null) {
$.cookie('modal_shown', 'yes', { expires: 7, path: '/' });
$("#myModal2").foundation('reveal', 'open');
}
});