Проблема с автопанорамированием в Bing Maps AJAX при изменении размера карты?

Я работаю над проектом, в котором размер карты Bing изменяется в зависимости от того, отображается/скрывается ли панель в левой части карты. Из-за этого, а также из-за условий Microsoft, запрещающих наложение чего-либо поверх логотипа/авторского права и т. д., я использую метод VEMap.resize для изменения размера карты, а затем перемещаю панель в сторону. Проблема в том, что при изменении размера происходит неудобное автоматическое панорамирование — поскольку мы объявляем центральную точку для определения изменения размера, карта перемещается, чтобы включить эту точку в центр без какого-либо контроля над ней. Без объявления центра карта не панорамируется, но она также не извлекает новые данные (плитки карты) при изменении размера, что приводит к появлению неудобной серой полосы справа.

Есть ли простой способ либо изменить размер карты и отключить автопанорамирование, перемещая центр перед панорамированием, либо принудительно отображать фрагменты карты при самом изменении размера? Любая помощь будет оценена по достоинству.


person Dan    schedule 17.11.2010    source источник


Ответы (1)


Вы можете попробовать новую версию 7.0, так как вы можете избавиться от этого раздражения, используя «map.setView({center: map.getCenter(), animate:false})» после изменения размера; это должно переопределить приятное, но раздражающее движение панорамирования при изменении размера.

Однако есть несколько функций (таких как информационные окна или кластеризация на стороне клиента), которые в настоящее время отсутствуют в 7.0 при переходе с 6.3, однако, и имена классов изменились, поэтому вы можете подождать пока, однако это был бы хороший момент, чтобы подготовиться к 7. .

person wildpeaks    schedule 03.12.2010