JS 判断不同 web 访问环境,主要针对移动设备,提供相对应的解析方案,本例是加载不同的 CSS 样式
Javascript 是一种由 Netscape 的 LiveScript 发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如 Perl,遗留的速度问题,为客户提供更流畅的浏览效果。
JS 判断不同 web 访问环境,主要针对移动设备,提供相对应的解析方案(判断设备代码直接 copy 腾讯网的)
- // 判断是否为移动端运行环境
- if(/AppleWebKit.*Mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))){
- if(window.location.href.indexOf("?mobile")<0){
- try{
- if(/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)){
- // 判断访问环境是 Android|webOS|iPhone|iPod|BlackBerry 则加载以下样式
- setActiveStyleSheet("style_mobile_a.css");
- }
- else if(/iPad/i.test(navigator.userAgent)){
- // 判断访问环境是 iPad 则加载以下样式
- setActiveStyleSheet("style_mobile_iPad.css");
- }
- else{
- // 判断访问环境是 其他移动设备 则加载以下样式
- setActiveStyleSheet("style_mobile_other.css");
- }
- }
- catch(e){}
- }
- }
- else{
- // 如果以上都不是,则加载以下样式
- setActiveStyleSheet("style_mobile_no.css");
- }
- // 判断完毕后加载样式
- function setActiveStyleSheet(filename){document.write("<link href="+filename+" rel=stylesheet>");}
加载页面
- <script type="text/javascript">
- if(/AppleWebKit.*mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))){
- if(window.location.href.indexOf("?mobile")<0){
- try{
- if(/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)){
- window.location.href="手机页面";
- }else if(/iPad/i.test(navigator.userAgent)){
- window.location.href="平板页面";
- }else{
- window.location.href="其他移动端页面"
- }
- }catch(e){}
- }
- }
- </script>
来源: