正如标题所说,这篇文章就是来告诉大家怎么去解决这个三个问题。
答案是使用JavaScript 中的navigator 对象。
这个对象可以做很多事情
判断是否是安卓
var isAndroid = /Android/i.test(navigator.userAgent);
判断是否是IOS系统
var isIOS = /iPhone|iPad|iPod/i.test(navigator.userAgent);
判断是否是手机浏览器
var isMobile = /mobi/i.test(navigator.userAgent.toLowerCase());
console.log(isAndroid);
console.log(isIOS);
console.log(isMobile);
判断是否正常联网
navigator.onLine // true
让手机震动
首先判断浏览器是否支持
var supportsVibrate = "vibrate" in navigator;
if(supportsVibrate){
// 振动1秒
navigator.vibrate(1000);
} else {
console.log('不支持震动');
}
震动多次还可以传数组
// 参数分别是震动3秒,等待2秒,然后振动1秒
navigator.vibrate([3000, 2000, 1000]);
如果想停止震动,你只需要向navigator.vibrate方法里传入0,或一个空数组:
navigator.vibrate(0);navigator.vibrate([]);
获取地理位置信息
navigator.geolocation.getCurrentPosition(); 在pc端使用误差挺大的。手机上测试经度还是不错的,当然还可以通过配置enableHighAcuracy设置为高经度模式,默认为false。
navigator.geolocation.getCurrentPosition(locationSuccess, locationError, {
enableHighAcuracy: true,
timeout: 5000,
maximumAge: 3000 });
具体使用方法可以参见w3cshool中HTML5 地理定位 章节,用法还是很简单的。