“modal-2”id 打开调查模式。
我想要的只是这个特定的模式,在有人单击关闭按钮后每 24 小时重新出现一次。
$(document).ready(function(){
var modals = ['#events'];
if (window.location.hash && ~modals.indexOf(window.location.hash)) {
$(window.location.hash).modal();
}
$("#modal-2").modal('show');
$(".modal:not(.noclose)").on("click","a",function(){
$(this).closest(".modal").modal("hide");
});
});
您可以将当前时间戳 Date.now() 设置为 localStorage 并在每次需要决定是否显示模式时检查它。示例代码:
var twentyFourHoursInMs = 24 * 60 * 60 * 1000;
var lastTimestamp = Number(localStorage.getItem("last-showed-at"));
var currentTimestamp = Date.now();
if ((currentTimestamp - lastTimestamp) >= twentyFourHoursInMs) {
localStorage.setItem("last-showed-at", currentTimestamp);
$("#your-modal-id").modal("show");
// Display modal once again
}
所以这是您案例中的完整代码:
$(document).ready(function(){
var modals = ['#events'];
if (window.location.hash && ~modals.indexOf(window.location.hash)) {
$(window.location.hash).modal();
}
$(".modal:not(.noclose)").on("click","a",function(){
$(this).closest(".modal").modal("hide");
});
var currentTimestamp = Date.now();
$("#cul8a").on("hidden.bs.modal", function () {
localStorage.setItem("last-showed-at", currentTimestamp);
});
// Check for modal eligibility
var twentyFourHoursInMs = 24 * 60 * 60 * 1000;
var lastTimestamp = Number(localStorage.getItem("last-showed-at"));
if ((currentTimestamp - lastTimestamp) >= twentyFourHoursInMs) {
setTimeout(function() {
localStorage.setItem("last-showed-at", currentTimestamp);
$("#cul8a").modal("show");
}, 4000);
}
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)