JavaScript 选中复选框 5 秒后刷新页面

JavaScript Refresh Page after 5 Seconds on Checked Checkbox

有没有办法如果选中复选框每 5 秒刷新一次网页?

例如,如果复选框未选中,则什么也不会发生,但如果选中,则函数refresh()将在之后每5秒刷新一次页面。

这是我目前的代码,但由于某种原因无法正常工作。

<input type="checkbox" id="autoRefresh" onclick="if(this.checked){refresh()}" checked>


function refresh() {
         setTimeout(function () { location.reload() }, 5000);
    }

您必须将信息临时存储在选中复选框的地方,例如 cookie 或 localStorage。试试下面的代码:

if(localStorage.getItem('doRefreshes')) {
  var x = setTimeout(function() {
    location.reload();
  }, 5000);
}

document.getElementById('autoRefresh').checked = !!localStorage.getItem('doRefreshes');

function toggleRefreshes(checked) {
  if(checked) {
    localStorage.setItem('doRefreshes', true)
    location.reload()
  } else {
    localStorage.removeItem('doRefreshes')
  }
}
<input type="checkbox" id="autoRefresh" onclick="toggleRefreshes(this.checked)">