我如何一次只能刷新此页面而不重复

    function timedRefresh(timeoutPeriod) {
  setTimeout("location.reload(false);",timeoutPeriod);
}

window.onload = timedRefresh(3000);

document.getElementById('myModal').style.display='block';

最佳答案

问题是您重新加载了完全相同的页面,因此无法持久保存已运行该代码的事实,它将再次运行它。
做到这一点的老式方法是使用cookie:

function timedRefreshIfNoCookie(timeoutPeriod, cookieName) {
    var cookies = document.cookie;
    if (cookies.indexOf(' '+cookieName+'=1;') < 0) {
        document.cookie = cookieName+'=1';
        setTimeout(function () {
            location.reload();
        }, timeoutPeriod);
    }
}
window.onload = function() {
    timedRefreshIfNoCookie(3000, 'refreshed');
}
document.getElementById('myModal').style.display='block';


您可能可以使用更好的东西,例如本地存储或cookie库,以更轻松地使用cookie。

10-05 21:03