我正在使用 Bing Maps v8,我想让信息框在显示位置上更加智能。
这是一个CodePen我所拥有的。如果将鼠标悬停在图钉上,您会注意到信息框显示在顶部,因此从 View 中被切断。
function loadMapScenario() {
var map = new Microsoft.Maps.Map(document.getElementById('myMap'), {
credentials: 'Your Key Here',
center: new Microsoft.Maps.Location(51.50632, -0.12714)
});
var pinLocation = new Microsoft.Maps.Location(51.663088, -0.204133);
var pushpin = new Microsoft.Maps.Pushpin(pinLocation, null);
var infobox = new Microsoft.Maps.Infobox(pinLocation, { title: 'Map Center', description: 'London, UK', visible: false });
infobox.setMap(map);
Microsoft.Maps.Events.addHandler(pushpin, 'mouseover', function () { infobox.setOptions({ visible: true }) });
map.entities.push(pushpin);
}
有没有办法让它变得更聪明,让它总是显示在 map 的中心,这样它就会一直在视野中。
我有found this它移动 map 以便信息框在 View 中,但这不是我所追求的。 我不希望 map 移动,只希望信息框显示在 map 中心。
最佳答案
有一个自定义信息框模块可以提供这个确切的功能。它会重新定位自己,以便始终在视野中。您可以在此处找到此模块:http://bingmapsv7modules.codeplex.com/wikipage?title=Custom%20Infobox%20Control
它在 Bing Maps V7 和 V8 中受支持。
关于javascript - Bing map 中的信息框位置始终朝向 map 中心,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41379029/