javascript - Bing map 中的信息框位置始终朝向 map 中心

标签 javascript position bing-maps infobox

我正在使用 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/

相关文章:

html - 固定三 Angular 形纯 CSS

windows-8.1 - 找不到 SDK Bing.Maps.Xaml,版本 = 1.113.0601.1

c# - Windows Phone 区域问题

javascript - src/js 和 build/js 目录在哪里?

javascript - 将 UUIDV4 转换为以 16 为基数的十进制

html - 垂直对齐 : top two floated divs within container

jquery - 当我们看不到另一个 div 时如何修复一个 div?

maps - 如何查找特定城市驾车距离内的所有城镇/城市?

php - file_put_contents 在使用 json_encode 时返回 null

javascript - 如何在react js中将值对象转换为数组