PHP如何检测jQuery移动A级浏览器服务器端?

PHP如何检测jQuery移动A级浏览器服务器端?,php,jquery-mobile,server-side,Php,Jquery Mobile,Server Side,当手机没有jQuery Mobile()列出的“a级”支持时,我想从标题中排除jQuery Mobile JS库。我发现,在旧的黑莓手机(支持JS)上,jQM框架将这些手机磨成蜗牛般的速度 例如,这些人在提供jQuery移动库和相关样式方面做得很好,具体取决于移动浏览器支持: 如何实现类似的服务器端方法,以便根据移动浏览器支持选择何时包括JS文件(例如jQM框架)和任何CSS文件 谢谢您必须使用浏览器用户代理来实现这一点,但由于有太多的用户代理,您自己很难做到(并保持最新),因此有一个库为您完成

当手机没有jQuery Mobile()列出的“a级”支持时,我想从标题中排除jQuery Mobile JS库。我发现,在旧的黑莓手机(支持JS)上,jQM框架将这些手机磨成蜗牛般的速度

例如,这些人在提供jQuery移动库和相关样式方面做得很好,具体取决于移动浏览器支持:

如何实现类似的服务器端方法,以便根据移动浏览器支持选择何时包括JS文件(例如jQM框架)和任何CSS文件


谢谢

您必须使用浏览器用户代理来实现这一点,但由于有太多的用户代理,您自己很难做到(并保持最新),因此有一个库为您完成所有艰苦的工作,计算出手机型号并为您提供手机功能

使用此功能,您可以了解手机在浏览器中是否具有某些功能,根据您所称的“A级”,您可以使用JS库,也可以不使用


他们有一个非常糟糕的网站,但详细的库和用于读取和缓存的PHP都提供给了您。

jQM功能是客户端的,这里有更多介绍:

grade返回布尔值的函数,默认值:返回值
$.support.mediaquery

任何支持条件 必须满足这些条件才能继续

对于服务器端,您需要

我以前使用过移动ESP,效果很好。它还易于扩展/定制


您可以通过使用jQuery
$进行功能检测来完成此客户端操作。support()
方法:

<script src="jquery-1.6.4.js"></script>
<script>
//check to see if media queries are supported (this is how the jQuery Mobile framework detects "grade A" browsers), $.support.mediaquery returns true or false
if ($.support.mediaquery) {

    //if support is found then load the jQuery Mobile JS file
    $.getScript('jquery.mobile-1.0.js');
}
</script>

//检查是否支持媒体查询(这是jQuery移动框架检测“A级”浏览器的方式),$.support.mediaquery返回true或false
if($.support.mediaquery){
//如果找到支持,则加载jQuery Mobile JS文件
$.getScript('jquery.mobile-1.0.js');
}


很有趣。我似乎找不到任何地方,他们会确切地说明他们是如何对它进行评分的,尽管很明显,如果没有ajax支持,你就得不到A。是的,我也尝试过寻找同样的东西。我想jQM会检查浏览器中是否有web工具包。我希望看到一些证据,证明您必须使用用户代理,而不是其他东西。我认为你不应该使用用户代理。感谢Jleagle,我已经在我们的主站点上使用WURFL来检测并重定向到我们移动站点的特定URL。是否可以使用WURFL来区分此处列出的“A级”浏览器:与其他浏览器不同?@Levi还有什么其他方法可以检测服务器上的移动浏览器?我会选择只有“A级”手机才具有的特定功能,比如画布支持?然后用它来做决定。您必须以编程方式进行选择,而不是仅仅说“手机在这张好手机列表中吗?”@Martin您根本不会检查代理,而是检查某些事情是否正常工作。功能的自动测试。老实说,如果你支持我的代码,我不在乎你是什么浏览器,对吗?@Phill Pafford,你的意思是“jQM功能是客户端”而不是“jQM功能是服务器端”?@Jasper很好,谢谢。有时候,我的想法和我键入的内容相隔一分钟,谢谢@Phil,我正在使用mdetect,我帮助将JQM服务器升级到我想要的几个手机上。