Клуб API Карт

Смена позиционирования контролов

Пост в архиве.

Здравствуйте. Подскажите пожалуйста, как правильно менять позиционирование контролов, а именно менять left?

При загрузке страницы выставляю left вот так:

myMap.controls

.add('smallZoomControl', { left: $(window).width() / 2 + 5, top: 10 })

.add('typeSelector', { left: $(window).width() / 2 + 34, top: 10 });

 

Все прекрасно, все хорошо, но при ресайзе страницы это позиционирование уже не подходит. Пытаюсь выставлять left в функции .resize(), высчитывая нужные значения на лету, все получается, нужные контейнеры получают правильные left, однако сами контролы "рвет в лохмотья" (см. скриншот). Полагаю, что я что-то неправильно делаю. Научите, как это делать правильно, пожалуйста?

6 комментариев

Что и зачем Вы пытаетесь таким образом сделать?

Карта занимает 100% ширины и высоты. На нее сверху кладется слой с текстом в 50% ширины. Этот слой должен "закрываться", т.е. контролы должны уходить левее.

Ссылка есть?

[тут была ссылка]

Это плохой вариант самому править какие-либо стили элементам АПИ.

Надо всегда работать в рамках интерфейсов АПИ.

myControl.options.set('position', { top: 30, left: 50 });

 

Я вам благодарен. Спасибо большое.