判断访问的是pc还是移动端展示对应样式的方法

2018-09-06 17:10·爱音乐的程序员小新人

js 获取滚动条宽度_js获取屏幕宽度并赋值_js获取屏幕宽度

同一页面,根据访问的是pc端还是移动端来展示对应的样式。以下提供两种方法:

js 获取滚动条宽度_js获取屏幕宽度_js获取屏幕宽度并赋值

1.利用js判断设备类型,应用不同样式文件

$(function(){
 var browser={
 versions:function(){
 var u = navigator.userAgent, app = navigator.appVersion;
 //移动设备浏览器版本信息
 return {
 //IE内核
 trident: u.indexOf('Trident') > -1,
 //opera内核 
 presto: u.indexOf('Presto') > -1,
 //苹果、谷歌内核 
 webKit: u.indexOf('AppleWebKit') > -1,
 //火狐内核
 gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1,
 //是否为移动终端
 mobile: !!u.match(/AppleWebKit.*Mobile.*/), 
 //ios终端
 ios: !!u.match(/(i[^;]+;( U;)? CPU.+Mac OS X/),
 //android终端或者uc浏览器
 android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, 
 //是否为iPhone或者QQHD浏览器
 iPhone: u.indexOf('iPhone') > -1 , 
 //是否iPad 
 iPad: u.indexOf('iPad') > -1,
 //是否web应该程序,没有头部与底部
 webApp: u.indexOf('Safari') == -1
 };
 }(), 
 language:(navigator.browserLanguage || navigator.language).toLowerCase() 
 } 
 
 if(browser.versions.mobile || browser.versions.ios || browser.versions.android || browser.versions.iPhone || browser.versions.iPad){ 
 cssChange(); 
 } 
 
 function cssChange(){
 var link = document.getElementsByTagName('link')[0];
 //PC端应用的样式文件:pc.css
 //alert('当前应用样式文件是:'+link.getAttribute('href'));
 link.setAttribute('href','css/mobile.css');
 //Mobile端应用样式文件:mobile.css
 //alert('当前应用样式文件是:'+link.getAttribute('href'));
 }
})

js 获取滚动条宽度_js获取屏幕宽度并赋值_js获取屏幕宽度

2.利用css3的媒体查询,在不同的分辨率下js获取屏幕宽度js获取屏幕宽度,调用不同的css文件

 
 

用媒体查询做自适应页面





 

 
我是Body下的第一个Div元素

js获取屏幕宽度并赋值_js获取屏幕宽度_js 获取滚动条宽度