如何从Google地方地图中获取经度和纬度?

密斯泰勒·帕特尔

我知道我在问您一个知识渊博的编码专家类型的愚蠢问题,但是我不是...我正在研究地图以获取搜索位置的经纬度(坐标)或通过拖动位置标记,但是我没有获得成功。我想您可以帮助我进行改进。我在这里搜索了很多示例,但得到了很多参考,但这并不是我所需要的,因为它只搜索直到我的小提琴中所示的特定地址才深入的位置。小提琴

function initialize() {

    var markers = [];
    var map = new google.maps.Map(document.getElementById('map-canvas'), {
        mapTypeId: google.maps.MapTypeId.ROADMAP
    });

    var defaultBounds = new google.maps.LatLngBounds(
    new google.maps.LatLng(-33.8902, 151.1759),
    new google.maps.LatLng(-33.8474, 151.2631));
    map.fitBounds(defaultBounds);

    // Create the search box and link it to the UI element.
    var input = /** @type {HTMLInputElement} */
    (
    document.getElementById('pac-input'));
    map.controls[google.maps.ControlPosition.TOP_LEFT].push(input);

    var searchBox = new google.maps.places.SearchBox(
    /** @type {HTMLInputElement} */ (input));

    // Listen for the event fired when the user selects an item from the
    // pick list. Retrieve the matching places for that item.
    google.maps.event.addListener(searchBox, 'places_changed', function () {

        var places = searchBox.getPlaces();

        for (var i = 0, marker; marker = markers[i]; i++) {
            marker.setMap(null);
        }

        markers = [];
        var bounds = new google.maps.LatLngBounds();

        for (var i = 0, place; place = places[i]; i++) {

            // Create a marker for each place.
            var marker = new google.maps.Marker({
                map: map,
                draggable:true,
                title: place.name,
                position: place.geometry.location
            });

            markers.push(marker);

            bounds.extend(place.geometry.location);
        }

        map.fitBounds(bounds);
    });
}

initialize();
#map-canvas {
    height:400px;
    width:600px;
}
.controls {
    margin-top: 16px;
    border: 1px solid transparent;
    border-radius: 2px 0 0 2px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    height: 32px;
    outline: none;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
}
#pac-input {
    background-color: #fff;
    padding: 0 11px 0 13px;
    width: 400px;
    font-family: Roboto;
    font-size: 15px;
    font-weight: 300;
    text-overflow: ellipsis;
}
#pac-input:focus {
    border-color: #4d90fe;
    margin-left: -1px;
    padding-left: 14px;
    /* Regular padding-left + 1. */
    width: 401px;
}
.pac-container {
    font-family: Roboto;
}
#type-selector {
    color: #fff;
    background-color: #4d90fe;
    padding: 5px 11px 0px 11px;
}
#type-selector label {
    font-family: Roboto;
    font-size: 13px;
    font-weight: 300;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
<div id="map-canvas"></div>
<input id="pac-input" class="controls" type="text" placeholder="Search Box">

`

克里斯·库克(Chris Cook)

您可以通过在创建标记后添加以下代码来轻松更新现有的Fiddle,以实现此目的:

var latInput = document.getElementsByName('latitude')[0];
var lngInput = document.getElementsByName('longitude')[0];
latInput.value = place.geometry.location.lat()
lngInput.value = place.geometry.location.lng();
google.maps.event.addListener(marker, 'dragend', function (e) {
    latInput.value = e.latLng.lat();
    lngInput.value = e.latLng.lng();
});

我已经分叉并更新了您的小提琴以反映此添加:

更新的小提琴

附加代码在添加了最后一个位置标记后会更新您的纬度和经度输入。

您需要记住,SearchBox类的getPlaces方法可以返回多个条目(具有不同的位置),并且附加代码仅显示最后一个位置的纬度和经度。

附加代码还添加了一个标记dragend事件处理程序,以在将所有添加的标记拖动到新位置后更新您的位置输入。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Google地图中单击矩形时,如何获取经度和纬度?

来自分类Dev

如何从 react-native 的地图中获取经度和纬度?

来自分类Dev

Google地方信息自动填充-如何获取经度和纬度?

来自分类Dev

无法在Android的谷歌地图中获取经度和纬度的值

来自分类Dev

如何在谷歌地图中获取落点纬度和经度

来自分类Dev

获取经度和纬度

来自分类Dev

获取经度和纬度

来自分类Dev

React单张地图获取经度和纬度

来自分类Dev

如何先执行Ajax调用以获取经度/纬度,然后使用标记加载Google地图?

来自分类Dev

如何快速从地图视图上的特定点获取经度和纬度?

来自分类Dev

如何从PHP中的kml文件获取经度和纬度

来自分类Dev

如何从地址中获取经度和纬度

来自分类Dev

如何从地址或街道获取经度和纬度?

来自分类Dev

如何从kataklisma / android-google-places库中获取经度和纬度值

来自分类Dev

从用户点击获取经度和纬度

来自分类Dev

使用Gps获取经度和纬度

来自分类Dev

在Google地图中获取具有经度和纬度的地址和邮政编码

来自分类Dev

使用经度和纬度在Google地图中定位位置

来自分类Dev

如何从 Android 列表视图中获取纬度和经度并将其放入谷歌地图?

来自分类Dev

如何从谷歌地图链接中提取经度和纬度值

来自分类Dev

使用Java从Android Studio中的Google Geocoding API获取经度和纬度值

来自分类Dev

尝试使用Google Map API获取经度和纬度时显示ZERO_RESULTS

来自分类Dev

Google Maps API:分别获取经度/纬度

来自分类Dev

如何从Python 3中的Google Geocode API获取经度/纬度?

来自分类Dev

在mapbox.js中获取经度和纬度

来自分类Dev

在平板电脑上获取经度和纬度为0.0

来自分类Dev

使用mapbox从地址获取经度和纬度

来自分类Dev

从数据框中的列获取经度和纬度

来自分类Dev

从Android中的地址获取经度和纬度

Related 相关文章

  1. 1

    在Google地图中单击矩形时,如何获取经度和纬度?

  2. 2

    如何从 react-native 的地图中获取经度和纬度?

  3. 3

    Google地方信息自动填充-如何获取经度和纬度?

  4. 4

    无法在Android的谷歌地图中获取经度和纬度的值

  5. 5

    如何在谷歌地图中获取落点纬度和经度

  6. 6

    获取经度和纬度

  7. 7

    获取经度和纬度

  8. 8

    React单张地图获取经度和纬度

  9. 9

    如何先执行Ajax调用以获取经度/纬度,然后使用标记加载Google地图?

  10. 10

    如何快速从地图视图上的特定点获取经度和纬度?

  11. 11

    如何从PHP中的kml文件获取经度和纬度

  12. 12

    如何从地址中获取经度和纬度

  13. 13

    如何从地址或街道获取经度和纬度?

  14. 14

    如何从kataklisma / android-google-places库中获取经度和纬度值

  15. 15

    从用户点击获取经度和纬度

  16. 16

    使用Gps获取经度和纬度

  17. 17

    在Google地图中获取具有经度和纬度的地址和邮政编码

  18. 18

    使用经度和纬度在Google地图中定位位置

  19. 19

    如何从 Android 列表视图中获取纬度和经度并将其放入谷歌地图?

  20. 20

    如何从谷歌地图链接中提取经度和纬度值

  21. 21

    使用Java从Android Studio中的Google Geocoding API获取经度和纬度值

  22. 22

    尝试使用Google Map API获取经度和纬度时显示ZERO_RESULTS

  23. 23

    Google Maps API:分别获取经度/纬度

  24. 24

    如何从Python 3中的Google Geocode API获取经度/纬度?

  25. 25

    在mapbox.js中获取经度和纬度

  26. 26

    在平板电脑上获取经度和纬度为0.0

  27. 27

    使用mapbox从地址获取经度和纬度

  28. 28

    从数据框中的列获取经度和纬度

  29. 29

    从Android中的地址获取经度和纬度

热门标签

归档