将JavaScript检测与MVC4显示模式集成的最佳方法是什么?

时间:2012-08-20 11:52:58

标签: javascript asp.net-mvc noscript

我正在研究现有的MVC项目,目前我正在研究使用显示模式功能。我希望最终的应用程序能够返回三种不同类型的视图。

  • 移动 - 移动电话,IE6 / 7
  • 非JavaScript浏览器 - 平板电脑
  • 平板电脑浏览器桌面 - 桌面浏览器

除了JavaScript检测之外,一切都很简单。

目前,它是一个优雅降级的桌面应用程序。这很棒,但需要花费大量时间来支持非JavaScript用户(仅占我们受众的2%,其中大多数可能是机器人)。所以我想给非JavaScript用户提供网站的基本移动版本,这应该不那么容易支持。

我知道必须在客户端呈现某些内容然后重定向。但是最好的方法是什么?我是使用JavaScript默认使用移动设备还是重定向还是使用<noscript>标签执行某些操作?

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

在您的方案中,<noscript>标签与meta refresh结合使用可能就是您想要的:

<head>

  <noscript>
    <meta http-equiv="refresh" content="0; url=http://example.com/mobile" />
  </noscript>

</head>

我不推荐相反的方式(首先加载移动设备并使用JavaScript重定向),因为正如你所说,非JS用户只有2%,这只会为你的其他用户增加不必要的开销用户。