Bing 地图中的信息框位置始终朝向地图中心
Infobox position always towards centre of map in Bing Maps
我正在使用 Bing 地图 v8,我想让信息框在显示位置上更加智能。
这是我所拥有的CodePen。如果将鼠标悬停在图钉上,您会注意到信息框显示在顶部,因此从视图中被截断了。
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);
}
有没有办法让它更聪明,让它始终显示在地图的中心,这样它就会始终在视野中。
我有 found this 可以移动地图,以便信息框在视图中,但这不是我想要的。 我不希望地图移动,只希望信息框向地图中心显示。
有一个自定义信息框模块可以提供这个确切的功能。它会重新定位自己,以便始终在视野中。你可以在这里找到这个模块:http://bingmapsv7modules.codeplex.com/wikipage?title=Custom%20Infobox%20Control
它在 Bing Maps V7 和 V8 中受支持。
我正在使用 Bing 地图 v8,我想让信息框在显示位置上更加智能。
这是我所拥有的CodePen。如果将鼠标悬停在图钉上,您会注意到信息框显示在顶部,因此从视图中被截断了。
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);
}
有没有办法让它更聪明,让它始终显示在地图的中心,这样它就会始终在视野中。
我有 found this 可以移动地图,以便信息框在视图中,但这不是我想要的。 我不希望地图移动,只希望信息框向地图中心显示。
有一个自定义信息框模块可以提供这个确切的功能。它会重新定位自己,以便始终在视野中。你可以在这里找到这个模块:http://bingmapsv7modules.codeplex.com/wikipage?title=Custom%20Infobox%20Control
它在 Bing Maps V7 和 V8 中受支持。