JSFiddle - React, Tailwind, and code Playground

by booktu8

HTML

<script>
  // 关闭页面清除session
  // 判断关闭页面之后与再次点开页面得时间,刷新操作时间间隔在20ms,>2000ms时说明是非刷新操作
  // 2000ms是通过关闭页面到点击历史纪录进入页面间隔得大概最短时间
  var loadTime = function() {
    _load_time = new Date().getTime();
    unload_time = localStorage.getItem('unload_time')
    localStorage.setItem('_load_time', _load_time);
    localStorage.setItem('nowload', _load_time - unload_time);
    const gap = _load_time - unload_time;
    console.log(gap)
    if (gap > 2000) {
      sessionStorage.clear()
    }
  };
  loadTime()

</script>

JavaScript

let _beforeUnload_time = 0,
  _gap_time = 0,
  _load_time = 0,
  unload_time = 0;
window.onunload = function() {
  unload_time = new Date().getTime()
  localStorage.setItem('unload_time', unload_time);
}