2010-01-16 132 views
2

我需要使我的网站在黑莓上运行良好,我还没有花太多精力来完成这项工作,但我有几个问题,谷歌正在努力。asp.net网站手机支持

我读过有关检测布劳尔型和修改asp.net控件的默认行为here

我怎么会去供应歧样式表特定的浏览器,我应该只是做到这一点?

if (Request.Browser.Browser.ToString() == "blackberry") //pseudocode 
{ 
    Response.Write("bb.css"); 
} 
else 
{ 
    Response.Write("bb.css"); 
} 

这将正常工作,但我觉得有一个更好的方法,我敢肯定,我已经知道了,在过去的东西,但我似乎无法召回。

我也在考虑一个response.redirect到一个黑莓的不同页面,目前我会用类似的方式实现。

任何想法或建议。

回答

2

检查了这一点

http://mdbf.codeplex.com/

而且nerddinner.com在http://nerddinner.codeplex.com/

+0

虽然看起来没有适当的扩展性,但我确实必须给实际项目一个小小的赞赏:手机迄今为止记录了近300个不同的功能和特性,并且数量在不断增长。例如,处于其当前状态的API将无法区分当前可用的三种不同的地理定位API:s。呃,我听起来太消极了 - 我不是故意的。 – Esko 2010-01-16 17:58:47

1

一般是可能的浏览器假装这是一个不同的(这是用来例如,通过歌剧这是默认设置假装它是一个IE来克服有问题的网站的一些限制)。我个人认为黑莓和类似设备很容易检测,所以没有理由不像你的样品那样做...... Vivek的网站看起来也不错;)

1

尽管与你的实际问题没有直接关系,您可能需要阅读我在标题“识别手机”下以“here”的答案所写的内容。

你应该真正在寻找的是一种检测当前设备功能的方法,如果你想正确地做到这一点,男孩是否有很多工作要做。正如我在其他答案中所说的那样,问题在于,由于用户代理字符串的历史,他们很长一段时间都不可靠。

如果手机整体不会成为您的主要平台,您不应该深究这一点,找到一些可行的方法,比如检查用户代理字符串是否包含“Blackberry”,并对此表示满意。但是,如果你确实想要做到这一点,那么你必须开发一个功能检测框架,以便为你完成所有可能的组合和排列组合 - 当沿着这条路走下去的路上并不容易。

对不起,我觉得有必要成为这样一个狂热者。

+0

我想我很幸运,因为它是一个企业内部网站,我只需要支持黑莓,没有别的,谢谢! – 2010-01-16 18:12:04