我正在使用最新版本的 API (v7),并希望在鼠标单击时添加图钉 ...
var mapSettings = {
'credentials': 'myCredentials',
'mapTypeId': Microsoft.Maps.MapTypeId.road,
'enableSearchLogo': false,
'showMapTypeSelector': false,
'showScalebar': false
};
var $map = $('#map');
var map = new Microsoft.Maps.Map($map.get(0), mapSettings);
Microsoft.Maps.Events.addHandler(map, 'click', function (e) {
var latitude = ?
var longitude = ?
var location = new Microsoft.Maps.Location(latitude, longitude);
var pushpin = new Microsoft.Maps.Pushpin(location, {
'draggable': true
});
map.entites.push(pushpin);
});
如您所见,我被困在点击处理程序中:如何获取点击的纬度和经度?
最佳答案
好的,搞定了。这是您感兴趣的代码:
if (e.targetType == "map") {
var point = new Microsoft.Maps.Point(e.getX(), e.getY());
var loc = e.target.tryPixelToLocation(point);
var location = new Microsoft.Maps.Location(loc.latitude, loc.longitude);
......
}
e.target.getLocation()
仅当目标为图钉、信息框等时有效。实际 map 上的点击是不同的。
关于javascript - 如何使用 Bing Maps AJAX Control v7 获取鼠标点击的纬度/经度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8590875/