【问题标题】:Getting n/w coordinates from google maps api从谷歌地图 api 获取 n/w 坐标
【发布时间】:2015-03-19 15:58:35
【问题描述】:
我目前从
获取纬度和经度
navigator.geolocation.getCurrentPosition(showPosition);
然后我将结果调用到一个文本框中:
function showPosition(position)
{
$('input[name="coordinates"]').val(position.coords.x + ", " + position.coords.y);
}
但我想要返回的位置为 51°56'51.48"N0°16'30.13"W
有没有办法即时执行此操作?
提前非常感谢!
克
【问题讨论】:
标签:
jquery
google-maps-api-3
gps
【解决方案1】:
基于上面@TimVermaelen 发布的链接...
function dd2dms(lat, lng) {
/*
* Convert (numbers) lat,lng to (string) degrees°minutes'seconds"
* Sample output string: 51°56'51.48"N0°16'30.13"W
*/
var convertLat = Math.abs(lat);
var LatDeg = Math.floor(convertLat);
var LatMin = Math.floor((convertLat - LatDeg) * 60);
var LatSec = ((convertLat - LatDeg - LatMin/60) * 3600).toFixed(2);
var LatCardinal = ((lat > 0) ? "N" : "S");
var convertLng = Math.abs(lng);
var LngDeg = Math.floor(convertLng);
var LngMin = Math.floor((convertLng - LngDeg) * 60);
var LngSec = ((convertLng - LngDeg - LngMin/60) * 3600).toFixed(2);
var LngCardinal = ((lng > 0) ? "E" : "W");
return LatDeg + '°' + LatMin + "'" + LatSec + '"' + LatCardinal +
LngDeg + '°' + LngMin + "'" + LngSec + '' + LngCardinal;
}
Demo