2011-04-19 46 views
2

添加用於檢測iPad Safari用戶的代碼的最佳方法是什麼?我的意思是我們應該用 1. CSS(通過鏈接媒體..) 2. JS(通過導航對象)檢測iPad的最佳方法Safari用戶

我聽說,使用用戶代理字符串是不檢測的iPad的最佳方式,因爲不一致。

請建議。謝謝。


我也有一個後續問題;

實際上,檢測桌面/ iPad的代碼將成爲JSP(而不是靜態HTML文件)的一部分......現在在我的應用程序中,有200多個頁面......所以,我應該在哪裏添加代碼用於檢測以及我應該如何添加它?我的意思是我必須在servlet web.xml文件某處更新..

對不起,2 questions..But只是在這裏加入兩者都相關的問題混合..

+1

這完全取決於你的使用情況。你想通過做這些事情來達到什麼目的? Android平板電腦怎麼樣? – vbence 2011-04-19 11:56:10

+0

這就是我想要檢測到的.1)設備:iPad和2)瀏覽器:移動Safari .. – testndtv 2011-04-19 12:01:15

+2

@hmthur主要問題仍然是**「你到底想要什麼」**。 – vbence 2011-04-19 12:03:22

回答

4

你總是有iPad在用戶代理。

但是,如果您將iPad定位爲可以以不同方式展示事物,那麼CSS媒體查詢無疑是前進的方向。

請參閱here ZeptoJS如何在JS中檢測iPad。

要在兩個方向瞄準iPad的,這樣做:

<link rel="stylesheet" media="all and (min-device-width: 481px) and (max-device-width: 1024px) and (orientation:portrait)" href="ipad-portrait.css"> 
<link rel="stylesheet" media="all and (min-device-width: 481px) and (max-device-width: 1024px) and (orientation:landscape)" href="ipad-landscape.css"> 
+0

瀏覽器嗅探通常不是一個好主意。通過更改Firefox和Chrome中的UA字符串,我可以使用特定的iPad網站。 ;) – 2011-04-19 11:41:01

+0

你有沒有試過最近在iPad上改變它? ;-) – changelog 2011-04-19 11:41:34

+2

heheh,我沒有,所以:不。你不能在iPad上運行其他瀏覽器?順便說一句,我已經看到了含有iPhone而不是iPad的UA字符串的老式iPad的實例。 – 2011-04-19 11:43:10