如何以 JavaScript 侦测 Client端的操作系统,浏览器,是否为手机等资讯. 源代码实践面向对象的JavaScript的风格.
开发网页有时需要判定用户端的平台或浏览器,
在 ASP.NET Web 网页Server端中侦测浏览器类型,可以参阅MSDN范例 : http://msdn.microsoft.com/zh-tw/library/3yekbd5b(v=vs.80).aspx
有时候使用博客置入控件或 Plug in 的语法, 例如: facebook 社群工具-留言版
可能在手机上无法正常浏览时,会需要 在 Client 端透过 JavaScript 中进行侦测
在 JavaScript 中透过 navigator 对象提供的几个属性,可以判定是否为手机,整理简表如下 :
笔者参考自http://www.quirksmode.org/js/detect.html 取得范例后稍加工几点:
- 增加该对象的属性(IsMobile) : 可以判定是否为手机。
- 增加识别操作系统: Windows Phone 7
直接浏览测试网址在: http://robin.somee.com/BrowserDetect/Test_BrowserDetect.html
从个人笔电上浏览的结果
从WP7 ( HTC mozart) 上浏览的结果
有兴趣请下载完整范例及各手机浏览器中 navigator 对象的属性值: 这里
原始文件中 BrowserDetect.js 中程序以实践面向对象的JavaScript的风格,有很参考价值。