拖动后标记在地图中心

Anj*_*jyr 3 javascript jquery google-maps google-maps-api-3

我在我的网站上实施谷歌地图.用户可以拖动标记并获取坐标.它的工作正常,但要求是当用户拖动标记时,拖动标记应该位于地图窗口的中心或者如果用户拖动地图,那么对于这种情况,标记也会到达地图窗口的中心.

我有以下代码只适用于地图上的拖动标记,但我不知道在拖动后添加在地图窗口中心移动标记的功能或代码的位置.

该代码如下:

google.maps.event.addListener(myMarker, 'dragend', function (evt) {
    document.getElementById('dragStatus').innerHTML = '<p> Current Lat: ' + evt.latLng.lat().toFixed(4) + ' Current Lng: ' + evt.latLng.lng().toFixed(4) + '</p>';
    var point = marker.getPosition();
       map.panTo(point);
});

google.maps.event.addListener(myMarker, 'dragstart', function (evt) {
    //-------------
    //------------
});
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/ANJYR/6xq6pujk/

MrU*_*own 5

这是(我认为)一个更简单的解决方案...或者我没有完全得到你想要实现的目标.

//Dragable Marker In Google Map....

var center = new google.maps.LatLng(-33.013803, -71.551498);

var map = new google.maps.Map(document.getElementById('mapBox'), {
    zoom: 18,
    center: center,
    mapTypeId: google.maps.MapTypeId.HYBRID
});

var myMarker = new google.maps.Marker({
    position: center,
    draggable: true,
    map: map
});

google.maps.event.addListener(myMarker, 'dragend', function () {
    map.setCenter(this.getPosition()); // Set map center to marker position
    updatePosition(this.getPosition().lat(), this.getPosition().lng()); // update position display
});

google.maps.event.addListener(map, 'dragend', function () {
    myMarker.setPosition(this.getCenter()); // set marker position to map center
    updatePosition(this.getCenter().lat(), this.getCenter().lng()); // update position display
});

function updatePosition(lat, lng) {
    document.getElementById('dragStatus').innerHTML = '<p> Current Lat: ' + lat.toFixed(4) + ' Current Lng: ' + lng.toFixed(4) + '</p>';
}
Run Code Online (Sandbox Code Playgroud)

JSFiddle demo