我们有多个lat long数组,(这里有3个数组存储在success_content_mapareas中)
因此,我们已经创建了Map,它看起来像这样,在下面的图像中看起来不错。
的数据
我们需要防止点击出多边形。
var success_content_mapareas = res.area_labels;
if (success_content_mapareas != "") {
var map = L.map("map").setView([26.250930597138844, 43.98925781250001], 5);
L.tileLayer("https://tile.openstreetmap.org/{z}/{x}/{y}.png", {
maxZoom: 19,
attribution: '© <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a>',
}).addTo(map);
jQuery.each(success_content_mapareas, function (index, success_content_mapareas) {
L.polygon(success_content_mapareas).addTo(map);
});
function onMapClick(e) {
var latlong_test = e.latlng;
console.log(latlong_test);
jQuery.get(
"https://nominatim.openstreetmap.org/reverseformat=jsonv2&lat=" + latlong_test.lat + "&lon=" + latlong_test.lng,
function (data) {
console.log(data.display_name);
jQuery("#bs_quick_shipping_full_address").val(data.display_name);
},
);
}
map.on("click", onMapClick);
}
字符串
我们用过这个,
https://unpkg.com/[email protected]/dist/leaflet.js
https://unpkg.com/[email protected]/dist/leaflet.css
的数据
我们需要防止在多边形外部单击,或警告消息,或类似的东西。
目前,我们正在获取Map中点击区域的纬度
你可以在控制台上看到。
参考https://leafletjs.com/
1条答案
按热度按时间ux6nzvsh1#
而不是通过执行
map.on("click", onMapClick);
将点击事件添加到Map,您可以将点击事件设置为每个多边形,字符串