如何通过javascript检测浏览器中是否按下了停止加载按钮

How to detect if stop loading button pressed in browser via javascript?

本文关键字:按钮 加载 是否 javascript 何通过 检测 浏览器      更新时间:2023-09-26

如何通过javascript检测浏览器中是否按下了停止加载按钮,或者页面是否仍在加载?

假设脚本到达浏览器,并且如果按下"停止加载按钮",则不会停止执行,这可能是一个可行的选项

使用它仍然可以有未加载的资源,不过这将给您一个良好的开端。

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv='content-type' content='text/html; charset=UTF-8' />
  <script type='text/javascript'>
    
    var DomLoaded = {
      done: false,
      onload: [],
      loaded: function() {
        if (DomLoaded.done) return;
        DomLoaded.done = true;
        if (document.removeEventListener) {
          document.removeEventListener('DOMContentLoaded', DomLoaded.loaded, false);
        }
        for (i = 0; i < DomLoaded.onload.length; i++) DomLoaded.onload[i]();
      },
      load: function(fireThis) {
        this.onload.push(fireThis);
        if (document.addEventListener) {
          document.addEventListener('DOMContentLoaded', DomLoaded.loaded, false);
        } else {
          /*IE<=8*/
          if (/MSIE/i.test(navigator.userAgent) && !window.opera) {
            (function() {
              try {
                document.body.doScroll('up');
                return DomLoaded.loaded();
              } catch (e) {}
              if (/loaded|complete/.test(document.readyState)) return DomLoaded.loaded();
              if (!DomLoaded.done) setTimeout(arguments.callee, 10);
            })();
          }
        }
        /* fallback */
        window.onload = DomLoaded.loaded;
      }
    };
    DomLoaded.load(function() {
      var d = document;
      if (d.getElementsById('loaded-checker')) {
        // loaded
      } else {
        // not loaded
      }
    });
  </script>
  <link rel='stylesheet' type='text/css' href='/css/style.css' />
  <script src="/js/script.js"></script>
</head>
<body>
  <div class="main-header"></div>
  <div class="main-content"></div>
  <div class="main-footer"></div>
  <div id="loaded-checker"></div>
</body>
</html>