Greasemonkey if/else 超时与日期

Greasemonkey if/else timeout with dates

我正在尝试编写一个每 10 秒刷新一次页面的脚本,但我希望每小时有一个不同的页面。这是我目前仅使用两个小时的简化版本:

// ==UserScript==
// @name        RCS testing 12 - 21
// @namespace   cat1788@gmail.com
// @include     *
// @version     1
// @grant       none
// ==/UserScript==

setTimeout(function () {
  var today = new Date().getHours();
  //console.log(today);
  if (today >= 12 && today <= 13) {
      window.location.href = 'http://google.com';
  } else if (today >= 13 && today <= 14) {
      window.location.href = 'http://bing.com';
  }
}, 10000);

但是,发生了什么,只有第一页在它的刷新周期开始:我做错了什么?

我是 Greasemonkey 的新手,所以我可能犯了一个非常基本的错误,希望你能帮忙!

感谢您的帮助, 猫

感谢@JaromandaX 和@ShadowRanger,我不需要使用时间段,我可以只使用小时整数:

setTimeout(function () {
  var hour = new Date().getHours();
  //console.log(today);
  if (hour === 12) {
      window.location.href = 'http://google.com';
  } else if (hour === 13) {
      window.location.href = 'http://bing.com';
  }
}, 10000);