如何检测移动浏览器并将适当的内容指向它?

时间:2010-08-16 20:58:01

标签: asp.net-mvc mobile mobile-website

我已经读过使用User Agent Sniffing向移动浏览器发送正确内容的不好(不建议),所以我想知道最好的方法是什么?

我正在使用ASP.NET MVC,我已经构建了我的网站,它在桌面浏览器上运行良好,所以我希望开始构建移动版本。当移动浏览器进入我的网站时,我想使用一组不同的视图,它们理想地具有以下属性:

  1. 链接到预先缩放的图像
  2. 使用最小的javascript
  3. 删除所有必要内容
  4. 我的第一个想法是嗅探用户代理,然后发送一个不同的.CSS文件,但如上所述,我已经读到这是一个不好的方法,所以我问你的想法

4 个答案:

答案 0 :(得分:7)

用户代理实际上是HTTP GET请求中的所有内容,但您应该让其他人维护该列表。我们使用Microsoft Mobile Device Browser File与自定义视图引擎的方式大致类似于this Scott Hanselman post

答案 1 :(得分:2)

检测移动浏览器的最佳方法是使用这个精彩的codeplex项目:

http://mdbf.codeplex.com/

有关如何创建目标视图的背景信息,请阅读:

http://www.hanselman.com/blog/MixMobileWebSitesWithASPNETMVCAndTheMobileBrowserDefinitionFile.aspx

答案 2 :(得分:1)

最简单的方法可能是使用单独的域“m.yourdomain.com”或“yourdomain.mobi”(Source),这样您就可以假设用户在移动设备上。

答案 3 :(得分:0)

虽然我认为嗅闻浏览器确定功能是不礼貌的,你应该使用功能嗅探,例如JQuery.support。当涉及到实际呈现明显不同的布局时,我认为你必须嗅探浏览器ID并采取相应的行动。