Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用标记从谷歌地图获取纬度/经度坐标_Javascript_Php_Google Maps_Google Maps Api 3 - Fatal编程技术网

Javascript 使用标记从谷歌地图获取纬度/经度坐标

Javascript 使用标记从谷歌地图获取纬度/经度坐标,javascript,php,google-maps,google-maps-api-3,Javascript,Php,Google Maps,Google Maps Api 3,我只是想知道是否有人知道一个简单的脚本可以执行以下操作: 在视图中加载google地图,单击它时会显示一个标记,将lat和long值保存到变量中 有人知道PHP中是否已经存在类似的东西吗 提前感谢查看谷歌地图API v.3。从: 我想当你得到lat lng时,你就可以放置标记了。到目前为止,我已经做到了以下几点-当我在地图上的任何地方单击时,我如何修改它以移动标记位置 我添加了以下内容,但似乎没有任何作用 google.maps.event.addListener(map, 'click',

我只是想知道是否有人知道一个简单的脚本可以执行以下操作:

在视图中加载google地图,单击它时会显示一个标记,将lat和long值保存到变量中

有人知道PHP中是否已经存在类似的东西吗


提前感谢

查看谷歌地图API v.3。从:


我想当你得到lat lng时,你就可以放置标记了。

到目前为止,我已经做到了以下几点-当我在地图上的任何地方单击时,我如何修改它以移动标记位置

我添加了以下内容,但似乎没有任何作用

google.maps.event.addListener(map, 'click', function(event) {
  addMarker(event.latLng);
});  

也许你正在寻找类似的东西。示例代码是APIv2。下面是使用Google Maps API v3精简的代码版本:

var latlng = new google.maps.LatLng(51.4975941, -0.0803232);
var map = new google.maps.Map(document.getElementById('map'), {
    center: latlng,
    zoom: 11,
    mapTypeId: google.maps.MapTypeId.ROADMAP
});
var marker = new google.maps.Marker({
    position: latlng,
    map: map,
    title: 'Set lat/lon values for this property',
    draggable: true
});
google.maps.event.addListener(marker, 'dragend', function(a) {
    console.log(a);
    // bingo!
    // a.latLng contains the co-ordinates where the marker was dropped
});

说明:必须将标记的属性设置为true。然后可以将回调函数挂接到该标记的
dragend
事件;新坐标将传递给函数,您可以将它们分配给JavaScript变量或表单字段。

下面的代码运行良好

var latlng = new google.maps.LatLng(51.4975941, -0.0803232);
var map = new google.maps.Map(document.getElementById('map'), {
    center: latlng,
    zoom: 11,
    mapTypeId: google.maps.MapTypeId.ROADMAP
});
var marker = new google.maps.Marker({
    position: latlng,
    map: map,
    title: 'Set lat/lon values for this property',
    draggable: true
});

google.maps.event.addListener(marker, 'dragend', function (event) {
    document.getElementById("latbox").value = this.getPosition().lat();
    document.getElementById("lngbox").value = this.getPosition().lng();
});

我几乎破解了它-我无法从对象中获取lat/lng值,但可以在控制台日志中看到这些值。。。它正在到达那里?了不起的萨尔曼!你就是那个男人!!:)你的代码工作得很好!我稍微调整了一下,加入了一些jQuery,感谢您的努力,非常感谢!
var latlng = new google.maps.LatLng(51.4975941, -0.0803232);
var map = new google.maps.Map(document.getElementById('map'), {
    center: latlng,
    zoom: 11,
    mapTypeId: google.maps.MapTypeId.ROADMAP
});
var marker = new google.maps.Marker({
    position: latlng,
    map: map,
    title: 'Set lat/lon values for this property',
    draggable: true
});
google.maps.event.addListener(marker, 'dragend', function(a) {
    console.log(a);
    // bingo!
    // a.latLng contains the co-ordinates where the marker was dropped
});
var latlng = new google.maps.LatLng(51.4975941, -0.0803232);
var map = new google.maps.Map(document.getElementById('map'), {
    center: latlng,
    zoom: 11,
    mapTypeId: google.maps.MapTypeId.ROADMAP
});
var marker = new google.maps.Marker({
    position: latlng,
    map: map,
    title: 'Set lat/lon values for this property',
    draggable: true
});

google.maps.event.addListener(marker, 'dragend', function (event) {
    document.getElementById("latbox").value = this.getPosition().lat();
    document.getElementById("lngbox").value = this.getPosition().lng();
});