javascript - jQuery 或 Javascript 助手从谷歌地图获取 LatLng

标签 javascript google-maps jquery-plugins

我需要让用户输入 map 任意点的地理编码 (LatLng),以便存储在数据库中供以后使用。

在承担责任之前,您是否知道 jQuery 插件或 javascript 可以:

  • 弹出 Google map
  • 用户在 map 上导航
  • 用户点击了一个点
  • 它将选定的 LatLng 放在文本框中
  • 关闭弹窗

(或类似的东西)

最佳答案

我强烈建议使用 v3 api,因为它作为插件同样易于使用和快速学习。此外,插件不会为您提供弹出窗口。

所以这是我的解决方案:

<强>1。导入

<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>

<强>2。在您的 html 中放置一个 div
<div class="mapClass" id="mapDiv" ></div>

<强>3。 Initialize your map

var map;

var greece = new google.maps.LatLng(38.822590,24.653320);

//Map options
var mapOptions = {
    zoom: 6,
    center: greece,
    mapTypeId: google.maps.MapTypeId.ROADMAP
};
//Make a new map
map = new google.maps.Map(document.getElementById("mapDiv"),mapOptions);

瞧,你得到了你的 map 和导航控件

<强>4。 Bind onclick event google.maps.event.addListener(map, "click",yourFunction);

并实现您的功能以从点击获取坐标并填充一些文本字段或其他内容加上 add a marker

function getCoordinates(event){
  if (event.latLng) {
       var marker;
       //Fill your textfields
       document.getElementById('yourLngTextfield').value=event.latLng.lng();
       document.getElementById('yourLatTextfield').value=event.latLng.lat();

       //Remove any previously added marker and add a marker to that spot
       if(marker!=null){
            marker.setMap(null);
       }

       var latlng = event.latLng;
       marker = new google.maps.Marker({
             position: latlng
             map: map
        });
  }
}

就是这样。不过还没有测试。

现在,如果您想在弹出窗口中添加所有这些,请使用 colorbox

如果您仍想使用插件,请检查 here

干杯

关于javascript - jQuery 或 Javascript 助手从谷歌地图获取 LatLng,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4618371/

相关文章:

javascript - 如何检测浏览器是否会通过 addEventListener 接受 xmlhttprequest 事件?

javascript - 如何在 UserId 前面设置 userName(在顶部父键)

javascript - Vue获取输入框值的方法

ios - google places api 没有给我任何结果

javascript - 使用 css 在 div 周围自定义覆盖 - 可调整大小的 jQuery 自定义句柄

javascript - 如何在刷新容器 div 后应用 jQuery 数据表?

google-maps - Google Maps v3 InfoWindow 太宽

javascript - 如何更改 Google map 缩放控制样式?

javascript - 构建具有动态加载功能扩展的 jquery 插件

jquery - 页面加载后使用 jQuery 渲染 knockout 模板