2

要件 - JavaScript を使用してタブレットを検出する

プラグインやライブラリ (jQuery は例外) を使用することは許可されておらず、コードを最小限に抑えたいと考えています。

このトピックに関する多くの投稿を読み、この解決策を思いつきました (画面の解像度とタッチの確認):

var _w = Math.max($(window).width(), $(window).height());
var _h = Math.min($(window).width(), $(window).height());

var tabletView = (_w >= 1000 && _h >= 600);

var is_touch_device = 'ontouchstart' in document.documentElement;

if (tabletView && is_touch_device) {
    alert('tablet');
}
else {
    alert('Not a Tablet');
}​

質問: このコードは十分に信頼できますか? そうでない場合、より良いアプローチは何ですか?

4

1 に答える 1

4

これにより、画面解像度が大きいスマートフォンもタブレットとして認識されます。

それ以外は、このコードは信頼性が高く、携帯電話とタブレットの違いを検出するためにできることは何もありません。ライブラリを使用したり、ユーザー エージェントを手動で解析したりする必要はありません。

于 2012-11-22T12:31:08.737 に答える