我正在尝试查找给定位置的国家/地区名称,例如,我想知道pennsylvania
如何自动查找美国?
我找到了一些反向地理编码链接,例如this one,它为我提供了点击地图的完整地址,this one在搜索时有效。最后一个看起来更有前途,因为它使用nomination。
这就是我为pennsylvania
放置标记的方法。
var map = L.map('map').setView([41.203323, -77.194527], 1);
var osmUrl = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png';
var osmLayer = new L.TileLayer(osmUrl, {
maxZoom: 19,
attribution: 'Map data © OpenStreetMap contributors'
});
map.addLayer(osmLayer);
var markers = [];
var marker1 = L.marker([41.203323, -77.194527],{title:"marker_1"}).addTo(map).bindPopup("Marker 1");
markers.push(marker1);
function markerFunction(id){
for (var i in markers){
var markerID = markers[i].options.title;
if (markerID == id){
markers[i].openPopup();
};
}
}
我不需要标记,我可以在console.log()
上显示国家/地区名称,然后我会解决这个问题,因为我只需要获取国家名称。
答案 0 :(得分:1)
您可以使用googleapi获取国家/地区代码,同时使用传单进行映射。
$.ajax({ url:'http://maps.googleapis.com/maps/api/geocode/json?latlng=41.203323,-77.194527&sensor=true',
success: function(data){
var country = data.results[0].address_components[6].long_name;
console.log(country);
}
});