2011-11-17 95 views
1

我想排除我的頭了jQuery Mobile的JS庫時,手機不具備「A級」的支持由jQuery Mobile的(http://jquerymobile.com/gbs/)的上市。我發現在舊的黑莓手機(支持JS)上,jQM框架將這些手機磨成蝸牛速度。PHP如何檢測jQuery mobile A級瀏覽器服務器端?

舉個例子,這些傢伙做在服務了jQuery Mobile的圖書館一份好工作,根據移動瀏覽器支持相關的樣式:demo.livebookings.biz

我如何能實現類似的服務器端方法,這樣我可以選擇何時根據移動瀏覽器支持包含JS文件(例如jQM框架)和任何CSS文件。

感謝

+0

有趣。我似乎無法找到任何地方,他們確切地說明他們是如何分級的,儘管很明顯沒有ajax的支持,你不能得到A. –

+0

是的我試圖尋找同樣的東西。我認爲jQM會檢查瀏覽器的web-kit。 – Martin

回答

1

的JQM功能是客戶端,更在這個位置:返回一個布爾值,默認

gradeA功能:函數返回的$.support.mediaquery
任何支持條件 必須滿足才能繼續。

對於服務器端,您將需要像

我以前用過的手機ESP和曾與它的偉大成果。它也易於擴展/定製

+0

+1謝謝你看起來很有希望! – Martin

+0

@Phill Pafford,你的意思是「jQM功能是客戶端」而不是「jQM功能是服務器端」? – Jasper

+0

@賈斯珀尼斯趕上,謝謝。有時我認爲和我鍵入的內容相距一分鐘,LOL –

1

你必須使用瀏覽器用戶代理要做到這一點,但因爲有這麼多的辛勤由你自己做的(並保持高達日期),WURFL是做一個庫所有的辛苦工作,爲您設計出手機型號,併爲您提供手機功能。

使用這個你可以找出手機是否有瀏覽器中的某些特徵,並根據你所說的「A級」,你可以使用JS庫與否。

他們有一個非常可怕的網站,但詳細的庫和PHP讀取&緩存它所有的給你。

+0

我想看到一些證明,你必須使用用戶代理,而不是別的。我認爲你不應該使用useragent。 。 。 –

+0

謝謝Jleagle,我已在我們的主站點上使用WURFL來檢測並重定向到我們的移動網站的特定網址。是否有可能使用WURFL區分這裏列出的「A級」瀏覽器:http://jquerymobile.com/gbs/與其餘的? – Martin

+0

@Levi還有什麼其他方式來檢測服務器上的移動瀏覽器? – Martin

1

您可以通過特徵檢測做這個客戶端使用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> 

http://api.jquery.com/jquery.support

http://api.jquery.com/jquery.getscript