“ | geolocation对象提供了对设备GPS传感器的访问。 |
navigator.geolocation.getCurrentPosition(geolocationSuccess, [geolocationError], [geolocationOptions]);
// 获取位置信息成功时调用的回调函数 // 该方法接受一个“Position”对象,包含当前GPS坐标信息 var onSuccess = function(position) { alert('Latitude: ' + position.coords.latitude + '\n' + 'Longitude: ' + position.coords.longitude + '\n' + 'Altitude: ' + position.coords.altitude + '\n' + 'Accuracy: ' + position.coords.accuracy + '\n' + 'Altitude Accuracy: ' + position.coords.altitudeAccuracy + '\n' + 'Heading: ' + position.coords.heading + '\n' + 'Speed: ' + position.coords.speed + '\n' + 'Timestamp: ' + new Date(position.timestamp) + '\n'); }; // onError回调函数接收一个PositionError对象 function onError(error) { alert('code: ' + error.code + '\n' + 'message: ' + error.message + '\n'); } navigator.geolocation.getCurrentPosition(onSuccess, onError);
Device Properties Example
var watchId = navigator.geolocation.watchPosition(geolocationSuccess, [geolocationError], [geolocationOptions]);
// 获取位置信息成功时调用的回调函数 // 该方法接受一个“Position”对象,包含当前GPS坐标信息 function onSuccess(position) { var element = document.getElementById('geolocation'); element.innerHTML = 'Latitude: ' + position.coords.latitude + '
' + 'Longitude: ' + position.coords.longitude + '
' + '
' + element.innerHTML; } // onError回调函数接收一个PositionError对象 function onError(error) { alert('code: ' + error.code + '\n' + 'message: ' + error.message + '\n'); } // Options: 每隔3秒钟检索一次位置信息 var watchID = navigator.geolocation.watchPosition(onSuccess, onError, { frequency: 3000 });
Device Properties Example
navigator.geolocation.clearWatch(watchID);
// 选项: 每隔3秒钟检索一次位置信息 var watchID = navigator.geolocation.watchPosition(onSuccess, onError, { frequency: 3000 }); // ...后继处理... navigator.geolocation.clearWatch(watchID);
Device Properties Example
function(position) { // 进行处理 }
function geolocationSuccess(position) { alert('Latitude: ' + position.coords.latitude + '\n' + 'Longitude: ' + position.coords.longitude + '\n' + 'Altitude: ' + position.coords.altitude + '\n' + 'Accuracy: ' + position.coords.accuracy + '\n' + 'Altitude Accuracy: ' + position.coords.altitudeAccuracy + '\n' + 'Heading: ' + position.coords.heading + '\n' + 'Speed: ' + position.coords.speed + '\n' + 'Timestamp: ' + new Date(position.timestamp) + '\n'); }
function(error) { // 处理错误 }
{ maximumAge: 3000, timeout: 5000, enableHighAccuracy: true };
{ enableHighAccuracy: true }
// 获取位置信息成功后调用的回调函数 var onSuccess = function(position) { alert('Latitude: ' + position.coords.latitude + '\n' + 'Longitude: ' + position.coords.longitude + '\n' + 'Altitude: ' + position.coords.altitude + '\n' + 'Accuracy: ' + position.coords.accuracy + '\n' + 'Altitude Accuracy: ' + position.coords.altitudeAccuracy + '\n' + 'Heading: ' + position.coords.heading + '\n' + 'Speed: ' + position.coords.speed + '\n' + 'Timestamp: ' + new Date(position.timestamp) + '\n'); }; // onError回调函数接收一个PositionError对象 function onError(error) { alert('code: ' + error.code + '\n' + 'message: ' + error.message + '\n'); } navigator.geolocation.getCurrentPosition(onSuccess, onError);
Device Properties Example
var onSuccess = function(position) { alert('Latitude: ' + position.coords.latitude + '\n' + 'Longitude: ' + position.coords.longitude + '\n' + 'Timestamp: ' + new Date(position.timestamp * 1000) + '\n'); };
// 获取位置信息成功后调用的回调函数 var onSuccess = function(position) { alert('Latitude: ' + position.coords.latitude + '\n' + 'Longitude: ' + position.coords.longitude + '\n' + 'Altitude: ' + position.coords.altitude + '\n' + 'Accuracy: ' + position.coords.accuracy + '\n' + 'Altitude Accuracy: ' + position.coords.altitudeAccuracy + '\n' + 'Heading: ' + position.coords.heading + '\n' + 'Speed: ' + position.coords.speed + '\n' + 'Timestamp: ' + new Date(position.timestamp) + '\n'); }; // 获取位置信息出错后调用的回调函数 var onError = function() { alert('onError!'); }; navigator.geolocation.getCurrentPosition(onSuccess, onError);
Geolocation Position Example