2015-05-29 133 views

回答

1

正如Jacob所說的,你應該確定你想要檢測的是什麼。只是檢測到它是「移動」設備並不是很有用。

  1. 對於屏幕寬度,請使用CSS媒體查詢。 Examples on CSS-Tricks
  2. 對於觸摸功能,我推薦使用Modernizr
2

首先,jQuery的has removed jQuery.browser有效地從1.9版。如果你想使用它,你將不得不利用jQuery migrate plugin來重新啓用舊jQuery的功能,包括$.browser

二,我不相信jQuery.browser曾經有過jQuery.browser.mobile的可能性。

第三,從jQuery中刪除的原因是您需要提出一個不同的問題:您如何定義移動瀏覽器?它是屏幕分辨率嗎?您也可以在筆記本電腦上調整屏幕大小。觸摸界面?筆記本電腦也有這些。瀏覽器版本?我懷疑Android版Chrome和Windows版Chrome有什麼區別。

但有一個解決方案!

jQuery建議使用「特徵檢測」,而這是一個非常好的主意。這意味着什麼基本上是在需要時檢查某些功能。例如,如果你想用手指滾動某個東西,用jQuery說一個圖片滑塊,你可以檢查是否存在觸摸事件:var hasTouch = ('ontouchstart' in window) || window.DocumentTouch && document instanceof DocumentTouch;

如果你想設計一些依賴於屏幕分辨率的東西,你應該使用media queries和CSS。

所以這一切歸結爲:特徵檢測>移動檢測。哦,你可能不應該關心什麼瀏覽器您的訪問者正在使用,而所有新的瀏覽器大部分保持在標準。你的主要的關注,不知道你的用例,應該是屏幕分辨率,或者更確切地說viewport resolutions