2016-11-04 3 views
0

В Bing Maps v8, я вижу различное поведение между релизными и замороженными ветвями в отношении привязки инфобокс.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, если у кого-то не будет лучшей идеи.

ответ

0

Релиз и замороженные ветви на данном этапе очень разные. Отделение выпуска обновляется ежемесячно, а замороженная ветка обновляется один раз в год. Большинство компаний должны и должны использовать основную ветку выпуска. Замороженная ветвь предназначена, в первую очередь, для приложений с критическими критическими параметрами, таких как 911 call-центров или сценариев аварийных служб, которым требуется более медленный цикл релиза, поскольку выпуски происходят, когда наиболее часто происходят сбои в работе, зная, что новые функции и исправления ошибок не будут исправлены в этом версии в течение длительного времени. Замерзшая ветвь была в последний раз обновлена, когда V8 был выпущен в июне. С тех пор появилось много новых функций и исправлений ошибок, которые не находятся в замороженной ветке.

Для полноты экспериментальная ветка обновляется несколько раз в день. Более подробную информацию о системе ветвления в Bing Maps V8 можно найти здесь: https://msdn.microsoft.com/en-us/library/mt712554.aspx

Что касается позиционирования инфобокса, вы можете управлять якорем, используя свойство anchor класса infobox. По умолчанию, когда указатель скрыт и не предусмотрен якорь, инфобокс привязывает его нижний левый угол к местоположению. Я пробовал различные значения контента и maxHeight, и он всегда отображается правильно.

+0

Спасибо. Мы используем ветвь релиза; Я просто пытался сравнить текущее поведение с более ранней версией, чтобы убедиться, что это недавнее изменение. Установка якоря не работала для меня, поэтому, возможно, я делаю что-то, что мешает этому. Во всяком случае, setHtmlContent работал для меня. –

Смежные вопросы