我有一份通讯注册表单,我想每15天仅加载一次(弹出),否则可能会有些烦人。我当前正在使用此jquery代码在页面加载时加载弹出表单。
<div id="test-popup" class="white-popup mfp-hide">
Popup Form
</div>
<script>
jQuery(window).load(function(){
jQuery.magnificPopup.open({
items: {src: '#test-popup'},type: 'inline'}, 0);
});
</script>
每次您访问页面时加载表单时,此方法都很好,但我想限制此范围,以便新用户每15天查看一次。不知道这15天是否是我想出的最佳做法?
最佳答案
您can使用localStorage执行此操作。
$(window).on('load', function() {
var now, lastDatePopupShowed;
now = new Date();
if (localStorage.getItem('lastDatePopupShowed') !== null) {
lastDatePopupShowed = new Date(parseInt(localStorage.getItem('lastDatePopupShowed')));
}
if (((now - lastDatePopupShowed) >= (15 * 86400000)) || !lastDatePopupShowed) {
$.magnificPopup.open({
items: { src: '#test-popup' },
type: 'inline'
}, 0);
localStorage.setItem('lastDatePopupShowed', now);
}
});
<div id="test-popup" class="white-popup mfp-hide">
Popup Form
</div>
您可以在此处看到一个有效的示例:http://codepen.io/caio/pen/Qwxarw