Bing Maps v8 - 信息框锚定行为已发生变化

时间:2016-11-04 13:31:07

标签: bing-maps

在Bing Maps v8中,我发现释放和冻结分支之间在信息框的锚定方面有不同的行为。

我在地图上有图标,我点击它在我点击的位置打开一个信息框。

hhInfobox = new Microsoft.Maps.Infobox(new Microsoft.Maps.Location(0, 0), { visible: false, showPointer: false });
....
Microsoft.Maps.Events.addHandler(pushpin, 'click', showHouseholdInfobox);
...
function showHouseholdInfobox(e) {
    ....
    hhInfobox.setOptions({
        visible: true, title: e.target.hhTitle, description: targetHtml
    });
    hhInfobox.setLocation(e.target.getLocation());
}

当我点击此图标(i.stack.imgur.com/nam9Q.png)时,

信息框出现在冻结分支(i.stack.imgur.com/1fSDi.png)中(信息框左上角有点固定在点击位置)

但是在发布分支(i.stack.imgur.com/mLQ3k.png)中(信息框的左下角锚定到点击位置)。

发布分支行为是一个问题,因为信息框可能是2100像素高,当我设置最大高度为600时,顶部保持固定而底部向上移动1500像素,并且用户必须向上滚动几页找到信息框。

所以我的问题是(1)这个新行为是一个错误还是一个功能? (2)如果它是一个功能,将信息框左上角锚定到点击位置的最佳方法是什么?

使用setHtmlContent可能就是答案。 (msdn.microsoft.com/en-us/library/mt712643.aspx)说“当使用自定义HTML代表信息框时,信息框固定在左下角”,但我发现它固定在顶部左角(i.stack.imgur.com/bvc7l.png),这就是我想要的,虽然我必须使用HTML。

如果这是一个很快就会修复的错误,那么我什么都不做。否则我可能会使用setHtmlContent,除非有人有更好的想法。

1 个答案:

答案 0 :(得分:0)

此时释放和冷冻分支非常不同。发布分支每月更新一次,冻结分支每年更新一次。大多数公司应该并且确实使用主要发布分支。冻结分支主要用于关键任务应用程序,例如911呼叫中心或紧急服务方案,他们需要较慢的发布周期,因为发布是最有可能发生中断的,因为知道新功能和错误修复将无法修复版本很长一段时间。当V8于6月发布时,冻结分支最后更新。自那时以来,已经发布了许多新功能和错误修复程序,这些修复程序不在冻结分支中。

为了完整性,实验分支每天更新几次。有关Bing Maps V8中分支系统的更多文档,请访问:https://msdn.microsoft.com/en-us/library/mt712554.aspx

对于信息框的定位,您可以使用信息框类的锚属性来控制锚点。默认情况下,当指针被隐藏且没有提供锚点时,信息框将其左下角锚定到该位置。我已经尝试了各种内容和maxHeight值,并且它总是正确呈现。

相关问题