2013-12-11 35 views
0

目前我們使用的這裏的JavaScript API 2.5.3(https://js.api.here.com/se/2.5.3/jsl.js?with=all),並創建了一個InfoBubbleMarker - 自定義HTML內容 - 基於諾基亞開發人員的描述ApiExplorer(http://developer.here.com/apiexplorer/examples/api-for-js/information-bubbles/extend-marker-to-infobubblemarker.html諾基亞HERE地圖javascript API:是否有任何財產來修復infoBubble的位置?

雖然infoBubbles自動化位置開關 - 這取決於事實上,顯示它的地方在哪裏 - 通常是很好的,我們想禁用它。

所以:有沒有propertyfixpositioninfoBubble

在此先感謝。

回答

0

您可以使用defaultXAlignmentdefaultYAlignment性質改變爲Infobubble例如首選偏移:

var infoBubbles = new nokia.maps.map.component.InfoBubbles(); 
infoBubbles.options.set("defaultXAlignment", 
    nokia.maps.map.component.InfoBubbles.ALIGNMENT_RIGHT); 
infoBubbles.options.set("defaultYAlignment", 
    nokia.maps.map.component.InfoBubbles.ALIGNMENT_ABOVE); 
map.components.add(infoBubbles); 

這還不修復Infobubble的位置,雖然,因爲它仍然會切換到另一邊如果地圖右側沒有足夠的空間來顯示氣泡。

徹底解決Infobubble的位置,你還需要觀察添加到defaultXAlignmentdefaultYAlignment保證值不會改變:

infoBubbles.addObserver("defaultXAlignment", function(){ 
    this.set("defaultXAlignment", 
     nokia.maps.map.component.InfoBubbles.ALIGNMENT_RIGHT);}); 
infoBubbles.addObserver("defaultYAlignment", function(){ 
    this.set("defaultYAlignment", 
     nokia.maps.map.component.InfoBubbles.ALIGNMENT_ABOVE);});