_determineBrowserMethod() {
    if (typeof window !== "undefined") {
      const browserType = navigator.userAgent.toLowerCase();
      this.requiresTimeout = false;
      if (browserType.indexOf("msie 9.0") != -1) {
        // IE 9
        this.requiresTimeout = true;
      } else if (browserType.indexOf("safari") != -1) {
        // safari
        if (browserType.indexOf("chrome") <= -1) {
          this.requiresTimeout = true;
        }
      }
    } else {
      this.requiresTimeout = true;
    }
  }
Determine if the browser requires a setTimeout or a requestAnimationFrame. This was required because
some implementations (safari and IE9) did not support requestAnimationFrame
@private