我遇到了一些问题,在使用Javascript时确定浏览器的类型。我目前的方法是捕获屏幕宽度和高度,并根据像素大小确定浏览器的类型。
我认为可以假设任何屏幕宽度小于768的都是移动设备,任何小于1024的都是平板电脑,而大于这个尺寸的则是台式机。
我已经开始在一些实际设备上进行测试,结果却大不相同。例如,在安卓设备(确切地说是Droid Bionic),无论设备处于横向还是纵向模式,它都返回980的宽度。这比我想象的要高得多。
目前我正在使用document.documentElement.clientWidth来确定宽度,但我也尝试过其他方法,如window.innerWidth。
我想表达的问题是一个经常被问到的问题,我以为我已经有了一个非常清晰的答案。显然,现在可能是适当的浏览器/设备检测更新的时候了。那么,确定我所在设备的实际尺寸最有效的方法是什么?
更新: 似乎移动浏览器实际上正在决定如何显示我的应用程序。事实上,他们正在这样做,但有一种方法可以阻止它。请参见答案。幸运的是,这意味着我们习惯于使用的标准特征检测方法仍然是确定您正在使用的设备的最佳方法。
我认为可以假设任何屏幕宽度小于768的都是移动设备,任何小于1024的都是平板电脑,而大于这个尺寸的则是台式机。
我已经开始在一些实际设备上进行测试,结果却大不相同。例如,在安卓设备(确切地说是Droid Bionic),无论设备处于横向还是纵向模式,它都返回980的宽度。这比我想象的要高得多。
目前我正在使用document.documentElement.clientWidth来确定宽度,但我也尝试过其他方法,如window.innerWidth。
我想表达的问题是一个经常被问到的问题,我以为我已经有了一个非常清晰的答案。显然,现在可能是适当的浏览器/设备检测更新的时候了。那么,确定我所在设备的实际尺寸最有效的方法是什么?
更新: 似乎移动浏览器实际上正在决定如何显示我的应用程序。事实上,他们正在这样做,但有一种方法可以阻止它。请参见答案。幸运的是,这意味着我们习惯于使用的标准特征检测方法仍然是确定您正在使用的设备的最佳方法。