android 判断设备类型,javascript判断设备类型-手机(mobile)、安卓(android)、电脑(pc)、其他(ipad/iPod/Windows)等...

(function() {varpreviousDevice, _addClass, _doc_element, _find, _handleOrientation, _hasClass, _orientation_event, _removeClass, _supports_orientation, _user_agent;

previousDevice=window.device;

window.device={};

_doc_element=window.document.documentElement;

_user_agent=window.navigator.userAgent.toLowerCase();

device.ios= function() {return device.iphone() || device.ipod() ||device.ipad();

};

device.iphone= function() {return _find(‘iphone‘);

};

device.ipod= function() {return _find(‘ipod‘);

};

device.ipad= function() {return _find(‘ipad‘);

};

device.android= function() {return _find(‘android‘);

};

device.androidPhone= function() {return device.android() && _find(‘mobile‘);

};

device.androidTablet= function() {return device.android() && !_find(‘mobile‘);

};

device.blackberry= function() {return _find(‘blackberry‘) || _find(‘bb10‘) || _find(‘rim‘);

};

device.blackberryPhone= function() {return device.blackberry() && !_find(‘tablet‘);

};

device.blackberryTablet= function() {return device.blackberry() && _find(‘tablet‘);

};

device.windows= function() {return _find(‘windows‘);

};

device.windowsPhone= function() {return device.windows() && _find(‘phone‘);

};

device.windowsTablet= function() {return device.windows() && _find(‘touch‘);

};

device.fxos= function() {return (_find(‘(mobile;‘) || _find(‘(tablet;‘)) && _find(‘; rv:‘);

};

device.fxosPhone= function() {return device.fxos() && _find(‘mobile‘);

};

device.fxosTablet= function() {return device.fxos() && _find(‘tablet‘);

};

device.meego= function() {return _find(‘meego‘);

};

device.mobile= function() {return device.androidPhone() || device.iphone() || device.ipod() || device.windowsPhone() || device.blackberryPhone() || device.fxosPhone() ||device.meego();

};

device.tablet= function() {return device.ipad() || device.androidTablet() || device.blackberryTablet() || device.windowsTablet() ||device.fxosTablet();

};

device.portrait= function() {return Math.abs(window.orientation) !== 90;

};

device.landscape= function() {return Math.abs(window.orientation) === 90;

};

device.noConflict= function() {

window.device=previousDevice;return this;

};

_find= function(needle) {return _user_agent.indexOf(needle) !== -1;

};

_hasClass= function(class_name) {varregex;

regex= new RegExp(class_name, ‘i‘);return_doc_element.className.match(regex);

};

_addClass= function(class_name) {if (!_hasClass(class_name)) {return _doc_element.className += " " +class_name;

}

};

_removeClass= function(class_name) {if(_hasClass(class_name)) {return _doc_element.className = _doc_element.className.replace(class_name, "");

}

};if(device.ios()) {if(device.ipad()) {

_addClass("ios ipad tablet");

}else if(device.iphone()) {

_addClass("ios iphone mobile");

}else if(device.ipod()) {

_addClass("ios ipod mobile");

}

}else if(device.android()) {if(device.androidTablet()) {

_addClass("android tablet");

}else{

_addClass("android mobile");

}

}else if(device.blackberry()) {if(device.blackberryTablet()) {

_addClass("blackberry tablet");

}else{

_addClass("blackberry mobile");

}

}else if(device.windows()) {if(device.windowsTablet()) {

_addClass("windows tablet");

}else if(device.windowsPhone()) {

_addClass("windows mobile");

}else{

_addClass("desktop");

}

}else if(device.fxos()) {if(device.fxosTablet()) {

_addClass("fxos tablet");

}else{

_addClass("fxos mobile");

}

}else if(device.meego()) {

_addClass("meego mobile");

}else{

_addClass("desktop");

}

_handleOrientation= function() {if(device.landscape()) {

_removeClass("portrait");return _addClass("landscape");

}else{

_removeClass("landscape");return _addClass("portrait");

}

};

_supports_orientation= "onorientationchange" inwindow;

_orientation_event= _supports_orientation ? "orientationchange" : "resize";if(window.addEventListener) {

window.addEventListener(_orientation_event, _handleOrientation,false);

}else if(window.attachEvent) {

window.attachEvent(_orientation_event, _handleOrientation);

}else{

window[_orientation_event]=_handleOrientation;

}

_handleOrientation();

}).call(this);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值