Discourse 在旧版浏览器上无法加载

我记得这对于某些浏览器(IE < 10?)来说是必不可少的,因为在进行特性检测后,无法通过 JavaScript 访问 <noscript> 标签。我想 @dan 几年前就处理过这个问题?

请注意,目前有两种备用“模式”:

  1. 提供爬虫视图。不需要 JS。这取决于 browser_update_user_agents

  2. 提供完整应用,进行特性检测,并通过移动 <noscript> 内容到 <body> 来进行回退。这不基于用户代理。

问题在于(2)在移动设备上不起作用,因为服务器没有渲染任何 <noscript> 内容。我们需要修复这个问题,同时不破坏(1)对超旧浏览器的支持。

7 个赞