2009-11-07 85 views
1

我正在设计一个移动网站,基本上我想要两个版本。一个将是JavaScript和CSS密集型,而另一个将用于较旧的手机。非常简单的xhtml。确定手机浏览器是否支持CSS和JavaScript功能

根据浏览器的功能,自动重定向的方法有哪些?

+0

如果使用.NET你的工作 - 看看这里所讨论的移动浏览器定义文件[http://www.hanselman.com/blog/MixMobileWebSitesWithASPNETMVCAndTheMobileBrowserDefinitionFile.aspx](http://www.hanselman。com/blog/MixMobileWebSitesWithASPNETMVCAndTheMobileBrowserDefinitionFile.aspx) – beckelmw 2009-11-07 04:51:51

回答

0

如果构建正确,那么相同的XHTML站点应该支持这两个版本。
这么说,我看到几个可能性:

  1. 检查用户代理确定 浏览器类型
  2. 使用在密集的JS版本的链接简单的网站
  3. 使用JS无脚本标签重定向到上简单的XHTML网站密集JS版本(不是很好在搜索引擎优化方面)
0

下载具有元刷新设置为1秒简短的HTML文件,它也会有JavaScript的在它。如果JavaScript启动,它会立即更改元刷新的URL。

这是一个穷人曼妙的退化概念,因为老的手机会有较慢的连接,所以下载网络应用程序两次是一个糟糕的设计。

理想情况下,您应该让他们下载非js版本,但其中包含脚本标记,因此它还会下载至少一个JavaScript文件,并且会使用不显眼的javascript更改原始页面。

但是,由于我预计这将是一个糟糕的设计,这就是为什么我建议元刷新,下载之间有一个非常微小的停顿,以给JavaScript的时间来解决它。

您还可以通过检查某些对象(如<canvas>)的存在以及基于对正确url的更改来检查哪个版本的javascript。

0

看看UAProf“一个有关无线设备捕获能力和偏好信息的规范,内容提供商可以使用该信息为特定设备生成适当格式的内容。 (引自维基百科页面)

另外有趣的是WURFL,这是一个开源的“XML配置文件,其中包含许多移动设备的功能和特性的信息。”您可能还想阅读:WURLF and UAProf

DeviceAtlas是一个流行的商业解决方案,声称比WURFL更全面(它包括所有WURFL数据和更多)。请参阅:How do you compare DeviceAtlas to WURFL and UAProf

+0

WURFL是最好的选择,它是开源的,它主要用于移动web应用程序 – fravelgue 2009-11-08 19:48:33

0

您可能不希望您的网站有两个单独的版本。使用feature detection逐步增强您的简单体验是一个更好的主意,以确定什么时候做花哨的东西。话虽如此,如果浏览器不支持它们,CSS规则往往会自行退化。

.background-gradient { 
    background-color: #333; 
    background-image: url(some_image.png); /*older browsers simply get the bg image*/ 
    background-image: -webkit-linear-gradient(top, #333333, #eeeeee); 
    background-image: -moz-linear-gradient(top, #333333, #eeeeee); 
    background-image: -ms-linear-gradient(top, #333333, #eeeeee); 
    background-image: -o-linear-gradient(top, #333333, #eeeeee); 
    background-image: linear-gradient(top, #333333, #eeeeee); 
} 
相关问题