2016-12-29 84 views
0

我正在使用Bing地圖v8,並且我想讓信息框在顯示的位置變得有點智能。信息框位置始終朝向Bing地圖中的地圖

這是我所擁有的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它移動地圖,使信息框內的視圖,但這不是我以後。 我不想讓地圖移動大約,只是信息框顯示朝向地圖中心。

回答

1

有一個自定義信息框模塊可用,提供了這個確切的功能。它會重新定位,以便它始終處於視野之中。您可以在此處找到此模塊:http://bingmapsv7modules.codeplex.com/wikipage?title=Custom%20Infobox%20Control

它受Bing Maps V7和V8支持。

+0

這是哪裏下載?我無法在您提供的鏈接上看到它:( – Ciwan

+0

您必須從源代碼選項卡下載完整的項目。右側有一個藍色的下載按鈕。http://bingmapsv7modules.codeplex.com/SourceControl/最新 – rbrundritt

+0

我在'mouseover'上顯示信息框,現在鼠標在圖釘上的任何微小移動都會導致信息框隱藏並顯示(即使我沒有移動圖釘,它也會閃爍)。一個解決方案? – Ciwan