Клуб API Карт

Контролы и пресеты

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

Может не увидел

1) нет красивых меток типа московское метро.

2) добавляю свой контрол (new ymaps.control.Button) в виде картинки, почемуто получается на кнопке (((

     var addPlacemarkButton = new ymaps.control.Button({
        data: { content: '<img title="" src="log.png" class="img-rounded">' },
        options: { maxWidth: 50, float: 'left', selectOnClick: false }});
    myMap.controls.add(addPlacemarkButton);

 в версии 2.0 небыло проблемы

Скорее всего я не увидел. ткните носом пжл.

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

1) Да, действительно иконок типа "метро" пока нет, может в будущем добавим

2) Не очень поняла вопрос, картинка не отображается на кнопке?

Александр О.
27 января 2016, 23:46

картинка есть на кнопке. сама кнопка не нужна.

Вы хотите вместо кнопки получить просто изображение на карте?

Александр О.
27 января 2016, 23:46

Да. в версии 2.0  было моё изображение, кстати если вставить инпуты с радиокнопками и т.д. то всё будет рисоваться на кнопке )))

Уберите кнопку если она не нужна. Понятно обьяснил?

Написанный вами код не должен был срабатывать и в версии 2.0)

Посмотрите на пример в песочнице для версии 2.1, как раз ваш кейс http://api.yandex.ru/maps/jsbox/2.1/button_layout

В примере переопределяется внешний вид кнопки

Александр О.
27 января 2016, 23:46

Конечно недолжен был.  Я привёл пример с песочницы для 2.1

Мне не нужно переопределять вид кнопки, а вывести на карту вообще своё что-то, например картинку или форму с инпутами

В 2,0 делал так:

ButtonLayout = ymaps.templateLayoutFactory.createClass("$[data.content]" ),
        button = new ymaps.control.Button({data: { content: 'тут форма с инпутами и картинками' }}, { layout: ButtonLayout });
        myMap.controls.add(button, { left: 75, top: 5 });

и всё работало. Что сейчас произошло с 2,1, почему не работает?

Пока что телепатические навыки у меня слабые, поэтому я не догадалась, как выглядит ваш код целиком. Вы не могли бы прислать ссылку на страницу, где воспроизводится проблема?

Александр О.
27 января 2016, 23:46

Я 4 поста написал, а вы телепата включаете )

Ставлю один код на обе версии

ButtonLayout = ymaps.templateLayoutFacto

ry.createClass("$[data.content]" ),
        button = new ymaps.control.Button({data: { content: 'тут форма с инпутами и картинками' }}, { layout: ButtonLayout });
        myMap.controls.add(button, { left: 75, top: 5 });

+ такой же код на картинку.

Результат:

Так выглядит на 2.0 http://joxi.ru/4NQOVP3JTJAHfeefjnQ

Так выглядит на 2.1 http://joxi.ru/8NUOVIwyTJBfCU7jzBk

Все, теперь все понятно.

Вот верный код для 2.1

ButtonLayout = ymaps.templateLayoutFactory.createClass("$[data.content]" ),

        button = new ymaps.control.Button({data: { content: 'тут форма с инпутами и картинками' }, options: { layout: ButtonLayout }});

        myMap.controls.add(button);

Александр О.
27 января 2016, 23:46

Для картинки неожиданно заработало, даже код не менял))).

Для формы с инпутами не работает.

Попробуйте вставить самую простую форму, всё сами увидите.

 

Если вы не меняли код, оно не могло заработать в принципе. Возьмите код, который я прислала

Александр О.
27 января 2016, 23:46

Теперь красиво. спасибо!