对应的客户端检测确实是一个比较重要的内容,特别是在前端开始在国内火热的时候这一部分确实非常的重要,但是随着前端的标准化慢慢的演进和发展,兼容性这块的问题已经没有往常前端那样的像一块烫手山芋,我结合我看的第九章的内容讲讲我个人的看法吧,如果你有更好的想法和建议请在评论区留言!
之所以有对应的客户端检测,并且把它单独列为一章作为讲解肯定是有着其对应的重要性的,无可置疑,因为不同的浏览器之间的差异性,导致前端开发者为了更好的开发前端由此有了所谓的 客户端检测 其中最最最重要的我们可以划分为三部分,如下所示:
-能力检测
-
就是所谓的检测编码之前先检测浏览器的能力!
-
检测调用函数之前确认是否存在该函数,不用考虑具体的浏览器和对应的版本!
-
能力检测本身无法精确的检测特定的浏览器和版本
-
怪癖检测
-
主要是因对特定浏览器实现中所存在的Bug
-
也无法精确的检测到具体的浏览器和浏览器版本!
-
用户代理检测
-
通过检测用户代理字符串来识别浏览器,用户代理对应的包含了大量的浏览器相关的信息,浏览器,平台,操作系统,对应的版本
-
并且用户代理字符串有一段相当长的发展历史,对应的有一些浏览器厂商试图修改用户代理字符串加入误导的信息伪装成别的浏览器,其中这方面的内容可以参考浏览器大战
-
用户代理检测需要用到一些特殊的技巧对应的一些浏览器需要特别注意譬如说:Opera
那么对应的客户端检测时候应该如何选择呢?
-
优先使用能力检测
-
确定代码如何处理,怪癖检测应该作为第二选项
-
用户代理应该作为最后选项,对用户代理字符串的依赖性比较强!
如果你有更好的建议或者想法请在评论区留言,我们一起交流!
网友评论