0
클릭 이벤트가 아닌 시작시 자동으로로드되는 내 bing 맵에 여러 infobox를 추가하고 싶습니다. 세 압핀이 있다고 가정하면 예를 들어 1 infobox에 제임스, 2 마크, 3 등이 포함될 것입니다. 3 infobox가 자동으로 데이터를 표시합니다. 지금은 루프에 넣어 그것을 추가 할 경우의 항상 루프보다는 후 내부의 마지막 값Bing Maps에 여러 개의 압핀을 추가하는 동안 infobox는 항상 마지막 요소를 사용합니다.
for (var i = 0; i < json.length; i++) {
var pinInfoBox; //the pop up info box
var infoboxLayer = new Microsoft.Maps.EntityCollection();
var pinLayer = new Microsoft.Maps.EntityCollection();
var loc = jsonData.location[i];
var pushpinOptions = {icon: 'xxx.png', width: 80, height: 80, offset: new Microsoft.Maps.Point(0, 15)};
var infoboxOptions = {showCloseButton: true, visible:false };
pinInfobox = new Microsoft.Maps.Infobox(map.getCenter(), infoboxOptions);
pinInfobox.setHtmlContent('<div class="arrow_box"><div class="content" id="content">'+loc.name+'</div></div>'); //here the name should keep changing
infoboxLayer.push(pinInfobox);
var pin = new Microsoft.Maps.Pushpin(latLon,pushpinOptions);
pinLayer.push(pin); //add pushpin to pinLayer
Microsoft.Maps.Events.addHandler(pin, 'click', displayInfobox); //here instead of click event i want the infobox to display automatically on startup
map.entities.push(pinLayer);
map.entities.push(infoboxLayer);
}
function displayInfobox(e) {
pinInfobox.setOptions({title: e.target.Title, description: e.target.Description, visible:true, offset: new Microsoft.Maps.Point(-50,90)});
pinInfobox.setLocation(e.target.getLocation());
}