⑴ 一些的js判断设备是移动端还是PC端的代码
varUA=window.navigator.userAgent.toLocaleLowerCase()
if(/(iphone|android|ipad)/.test(UA)){
alert('移动设备')
}else{
alert('PC')
}
⑵ js如何判断客户端是iOS还是Android等移动终端
判断原理:
JavaScript是前端开发的主要语言,我们可以通过编写JavaScript程序来判断浏览器的类型及版本。JavaScript判断浏览器类型一般有两种办法,一种是根据各种浏览器独有的属性来分辨,另一种是通过分析浏览器的userAgent属性来判断的。在许多情况下,值判断出浏览器类型之后,还需判断浏览器版本才能处理兼容性问题,而判断浏览器的版本一般只能通过分析浏览器的userAgent才能知道。
浏览器类型
⑴浏览器特有属性
⑵根据userAgent
浏览器版本
⑴根据userAgent
对于手机浏览器判断
1.如何判断是否为移动终端 利用正则match,
匹配navigator.userAgent是否含有字符串AppleWebKit*****Mobile
安卓qq浏览器HD版 只有AppleWebKit
2手机语言版本的判断
使用navigator.browserLanguage 便可得出windows phone语言版本,
当然可恶的小小手机语言版本也有兼容性的差异,兼容Mozilla,以及AppleWebKit内核的浏览器访问其语言版本,它会列出 navigator.language
CODE:
<script type="text/javascript">
var browser={
versions:function(){
var u = navigator.userAgent, app = navigator.appVersion;
return { //移动终端浏览器版本信息
trident: u.indexOf('Trident') > -1, //IE内核
presto: u.indexOf('Presto') > -1, //opera内核
webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核
gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐内核
mobile: !!u.match(/AppleWebKit.*Mobile.*/), //是否为移动终端
ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或uc浏览器
iPhone: u.indexOf('iPhone') > -1 , //是否为iPhone或者QQHD浏览器
iPad: u.indexOf('iPad') > -1, //是否iPad
webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部
};
}(),
language:(navigator.browserLanguage || navigator.language).toLowerCase()
}
document.writeln("语言版本: "+browser.language);
document.writeln(" 是否为移动终端: "+browser.versions.mobile);
document.writeln(" ios终端: "+browser.versions.ios);
document.writeln(" android终端: "+browser.versions.android);
document.writeln(" 是否为iPhone: "+browser.versions.iPhone);
document.writeln(" 是否iPad: "+browser.versions.iPad);
document.writeln(navigator.userAgent);
</script>
比较特别的地方
UC浏览器没有安卓报头,只返回:linux ,这里粗略的根据linux来判断是安卓(前提必须满足是移动终端,UC这点是满足的)
安卓QQ浏览器HD版检测的结果是:mac, Safari
⑶ js判断客户端设备类型
可以用navigator.userAgent.indexOf()来判断。
⑷ 网页设计中如何javascript检测用户设备是电脑或者平板或者手机
|
functiongoPAGE(){
自if((navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|WindowsPhone)/i))){
window.location.href="你的手机版地址";
}
else{
window.location.href="你的电脑版地址"; }
}
goPAGE();//调用判断函数
⑸ js判断用户的浏览设备是移动设备还是PC
/** *判断是否是通过手机访问 */ public static function isMobile() { // 如果有HTTP_X_WAP_PROFILE则一定是移动设备 if (isset($_SERVER['HTTP_X_WAP_PROFILE'])) { return true; } //如果via信息含有则一定是移动设备,部分服务商会屏蔽该信息 if (isset($_SERVER['HTTP_VIA'])) { //找不到为flase,否则为true return stristr($_SERVER['HTTP_VIA'], "wap") ? true : false; } //判断手机发送的客户端标志,兼容性有待提高 if (isset($_SERVER['HTTP_USER_AGENT'])) { $clientkeywords = array('nokia', 'sony', 'ericsson', 'mot', 'samsung', 'htc', 'sgh', 'lg', 'sharp', 'sie-', 'philips', 'panasonic', 'alcatel', 'lenovo', 'iphone', 'ipod', 'blackberry', 'meizu', 'android', 'netfront', 'symbian', 'ucweb', 'windowsce', 'palm', 'operamini', 'operamobi', 'openwave', 'nexusone', 'cldc', 'midp', 'wap', 'mobile'); // 从HTTP_USER_AGENT中查找手机浏览器的关... /** *判断是否是通过手机访问 */ public static function isMobile() { // 如果有HTTP_X_WAP_PROFILE则一定是移动设备 if (isset($_SERVER['HTTP_X_WAP_PROFILE'])) { return true; } //如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息 if (isset($_SERVER['HTTP_VIA'])) { //找不到为flase,否则为true return stristr($_SERVER['HTTP_VIA'], "wap") ? true : false; } //判断手机发送的客户端标志,兼容性有待提高 if (isset($_SERVER['HTTP_USER_AGENT'])) { $clientkeywords = array('nokia', 'sony', 'ericsson', 'mot', 'samsung', 'htc', 'sgh', 'lg', 'sharp', 'sie-', 'philips', 'panasonic', 'alcatel', 'lenovo', 'iphone', 'ipod', 'blackberry', 'meizu', 'android', 'netfront', 'symbian', 'ucweb', 'windowsce', 'palm', 'operamini', 'operamobi', 'openwave', 'nexusone', 'cldc', 'midp', 'wap', 'mobile'); // 从HTTP_USER_AGENT中查找手机浏览器的关键字 if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT']))) { return true; } } //协议法,因为有可能不准确,放到最后判断 if (isset($_SERVER['HTTP_ACCEPT'])) { // 如果只支持wml并且不支持html那一定是移动设备 // 如果支持wml和html但是wml在html之前则是移动设备 if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== false) && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') === false || (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'text/html')))) { return true; } } return false; }
⑹ 如何在一个html文件里,用js判断平板和PC
给你一个例子,有这个就好办了。不会可参考“JS判断浏览器客户端类型”
<scripttype="text/javascript">
varbForcepc=fGetQuery("dv")=="pc";//PC端
functionfBrowserRedirect(){
varsUserAgent=navigator.userAgent.toLowerCase();
varbIsIpad=sUserAgent.match(/ipad/i)=="ipad";//ipad
varbIsIphoneOs=sUserAgent.match(/iphoneos/i)=="iphoneos";//iphone
varbIsMidp=sUserAgent.match(/midp/i)=="midp";//移动设备
varbIsUc7=sUserAgent.match(/rv:1.2.3.4/i)=="rv:1.2.3.4";//
varbIsUc=sUserAgent.match(/ucweb/i)=="ucweb";//ucweb浏览器
varbIsAndroid=sUserAgent.match(/android/i)=="android";//android
varbIsCE=sUserAgent.match(/windowsce/i)=="windowsce";//windowsce移动系统
varbIsWM=sUserAgent.match(/windowsmobile/i)=="windowsmobile";//windowsmobile
if(bIsIpad){
varsUrl=location.href;
if(!bForcepc){
window.location.href="ipad";
}
}
if(bIsIphoneOs||bIsAndroid){
varsUrl=location.href;
if(!bForcepc){
window.location.href="smart";
}
}
if(bIsMidp||bIsUc7||bIsUc||bIsCE||bIsWM){
varsUrl=location.href;
if(!bForcepc){
window.location.href="m";
}
}
}
functionfGetQuery(name){//获取参数值
varsUrl=window.location.search.substr(1);
varr=sUrl.match(newRegExp("(^|&)"+name+"=([^&]*)(&|$)"));
return(r==null?null:(r[2]));
}
functionfShowVerBlock(){
if(bForcepc){
document.getElementByIdx_x("dv_block").style.display="block";
}
else{
document.getElementByIdx_x("ad_block").style.display="block";
}
}
fBrowserRedirect();
</script>
⑺ js如何判断是使用手机还是电脑
通过userAgent判断,navigator.userAgent可以获取当前的userAgent
然后通过匹配手机的常见userAgent进行识别
注:userAgent可以在大多数的手机浏览器上修改(例如选择访问电脑版、访问iphone版等选项就是改变userAgent,来骗过服务器获取其他设备访问的版本)
一般手机浏览器里都带有mobile字样(非协议规范)
⑻ js怎么判断移动设备是Android还是iPhone,接着判断Android下设备是ipad还是手机
正好我之前弄了个浏览终端检测的页面,http://foumu.com/m/info.html
JS代码如下:
$(document).ready(function() {
/* 智能机浏览器版本信息:*/
var str="";
var browser={versions:function(){
var u = navigator.userAgent, app = navigator.appVersion;
return {//移动终端浏览器版本信息
trident: u.indexOf('Trident') > -1, //IE内核
presto: u.indexOf('Presto') > -1, //opera内核
webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核
gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐内核
mobile: !!u.match(/AppleWebKit.*Mobile.*/)||!!u.match(/AppleWebKit/), //是否为移动终端
ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或者uc浏览器
iPhone: u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, //是否为iPhone或者QQHD浏览器
iPad: u.indexOf('iPad') > -1, //是否iPad
webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部
};
}(),
language:(navigator.browserLanguage || navigator.language).toLowerCase()
}
str+="浏览器分辨率: "+document.documentElement.clientWidth+"*"+document.documentElement.clientHeight;
str+="<br>屏幕分辨率: "+window.screen.width+"*"+window.screen.height;
str+="<br>浏览器语言版本: "+browser.language;
str+="<br>是否为移动终端: "+browser.versions.mobile;
str+="<br>ios终端: "+browser.versions.ios;
str+="<br>android终端: "+browser.versions.android;
str+="<br>是否为iPhone: "+browser.versions.iPhone;
str+="<br>是否iPad: "+browser.versions.iPad;
str+="<br>"+navigator.userAgent;
$(".box:first").html(str);
});
⑼ js如何判断是移动设备,还是pc
<scripttype="text/javascript">
functionbrowserRedirect(){
varsUserAgent=navigator.userAgent.toLowerCase();
varbIsIpad=sUserAgent.match(/ipad/i)=="ipad";
varbIsIphoneOs=sUserAgent.match(/iphoneos/i)=="iphoneos";
varbIsMidp=sUserAgent.match(/midp/i)=="midp";
varbIsUc7=sUserAgent.match(/rv:1.2.3.4/i)=="rv:1.2.3.4";
varbIsUc=sUserAgent.match(/ucweb/i)=="ucweb";
varbIsAndroid=sUserAgent.match(/android/i)=="android";
varbIsCE=sUserAgent.match(/windowsce/i)=="windowsce";
varbIsWM=sUserAgent.match(/windowsmobile/i)=="windowsmobile";
document.writeln("您的浏览设备为:");
if(bIsIpad||bIsIphoneOs||bIsMidp||bIsUc7||bIsUc||bIsAndroid||bIsCE||bIsWM){
document.writeln("phone");
}else{
document.writeln("pc");
}
}
browserRedirect();
</script>
⑽ js判断是移动端设备还是pc端设备代码
可以用 screen.availWidth 获取屏幕宽度,小于768px就是小屏幕设备了(平板电脑竖屏、手机),又或者用 document.touchstart 判断是否支持触屏,但是现在一些笔记本电脑都已经支持触屏了,网页布局最好用响应式布局。一般主流的做法就是支持触屏就用触摸版本的页面,不支持触屏就用PC版页面。