if(localStorage.getItem('popState') != 'shown'){
$(function () {
$('[data-toggle="popover"]').popover({
content : "....."
});
$('[data-toggle="popover"]').popover('show');
});
localStorage.setItem('popState','shown')
}
我正在使用上面的方法在页面加载过程中向用户显示弹出消息,并第二次禁用加载后显示的弹出消息。如何在一段时间后自动弹出给用户?例如,在用户关闭弹出消息后,它将在一个小时后自动显示。
发布于 2017-07-12 08:33:26
您可以使用时间间隔来执行此操作:
const showPopup = function showPopup() {
const lastShown = localStorage.getItem('popStateLastShown');
const hasOneHourPassed = lastShown ?
(Math.abs(new Date(lastShown) - new Date()) / 36e5) >= 1 :
false;
if (hasOneHourPassed || localStorage.getItem('popState') !== 'shown') {
// Show popup
localStorage.setItem('popState', 'shown');
localStorage.setItem('popStateLastShown', new Date());
}
};
// Run code immediately.
showPopup();
// Check again after an hour.
setInterval(showPopup, 36e5);
https://stackoverflow.com/questions/45051861
复制相似问题