如何让 Chrome 在启动延迟后加载某些页面?

如何让 Chrome 在启动延迟后加载某些页面?

我每天都使用 Chrome,并将 10 个页面设置为启动页,因此每次启动 Chrome 时,它​​都会自动尝试加载这 10 个页面。这当然是一个缓慢的过程,我并不总是希望加载这些页面,有时我只希望在启动时打开一个新选项卡。

为了两全其美,我想在启动时延迟加载每个页面。我该怎么做?

答案1

我尝试寻找 Chrome 扩展程序来执行此操作,但找不到。然后我突然想到我可以使用存储在本地硬盘上的简单 HTML 页面,并在可配置的延迟后使用 javascript 进行重定向。

因此,我的启动页面不应设置为:

https://www.farnamstreetblog.com/blog/
http://hackaday.com/blog

我现在将它们设置为这样,并且可以轻松控制每个页面的加载时间,而根本不需要扩展,实际上这当然适用于任何浏览器,而不仅仅是 Chrome。

只需编辑下面的 URL,并将页面保存为硬盘上的 html 页面,然后双击打开它。然后将地址栏中的链接设为起始页,就大功告成了!

启动时打开页面.html

<html>
<head>
  <title>Open Pages</title>

  <style>
    * {
        font-family:arial;
    }

    body {background-color: #FFFFF0;}

  </style>

  <script>
    // CHANGE THE FOLLOWING AS YOU SEE FIT
    // Currently waits 5 seconds before starting to open pages
    var numSecondsBetweenPageOpens = 5;
    var urls = [
      {url:'https://live.givedirectly.org/'},
      {url:'https://www.damninteresting.com/'}
    ];

    var initialDelay = 0;
    var elapsedTime = 0;
    var currDelay = 1;
    var enabled = true;
    var firstTime = true;

    function getOutput(value)
    {
      return document.getElementById("output").innerHTML;
    }

    function setOutput(value)
    {
      document.getElementById("output").innerHTML = value;
    }

    function out(msg)
    {
      var html = getOutput();
      setOutput(msg + '<br/>' + html);
    }

    function stopIt()
    {
      enabled = ! enabled;
      if (! enabled)
      {
        out("<h3>Stopped!</h3>");
      }
      else
      {
        main();
        out("<h3>Started!</h3>");
      }

    }

    function getParameterByName(name, url) {
        if (!url) url = window.location.href;
        name = name.replace(/[\[\]]/g, "\\$&");
        var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
            results = regex.exec(url);
        if (!results) return null;
        if (!results[2]) return '';
        return decodeURIComponent(results[2].replace(/\+/g, " "));
    }

    function nvl(value,defaultValue)
    {
      if (value == null)
        return defaultValue;
      if (value == "")
        return defaultValue;
      if (value)
        return value;
      return defaultValue;
    }

    var url = getParameterByName('url');
    var showInfoDelay = nvl(parseInt(getParameterByName('showInfoDelay')), 1) * 1000;

    document.title=url;

    setInterval(function()
    {
      if (! enabled)
        return;

      out(elapsedTime);
      elapsedTime++;
    }, 1000);

    function doIt(item)
    {
      currDelay = currDelay + numSecondsBetweenPageOpens;
      var seconds = nvl(parseInt(currDelay+initialDelay));

      out('Opening <a href="' + item.url + '">' + item.url + '</a> in ' + seconds + ' seconds.');
      setTimeout(function()
      {
        if (! enabled)
          return;
        out('Opening ' + item.url);
        window.open(item.url);
      }, seconds * 1000);
    }

    function main()
    {
      setTimeout(function()
      {
        setOutput('');
        for (var i=0; i < urls.length; i++)
        {
          var item = urls[i];
          doIt(item);
        }
      }, showInfoDelay);
    }

  </script>

</head>
<body>
  <p>Will start to open pages soon.</p>
  <p> <a href="javascript:stopIt()">Click to stop opening pages</a> </p>
  <div id="output">...<br/></div>
  <script>
    main();
  </script>
</body>
</html>

相关内容