Клуб API Карт

Задание стиля метки

ilravil
9 декабря 2011, 16:56

При создании метки в конструкторе получена стандартная метка с кодом

 

YMaps.Styles.add("constructor#pmlbm2Placemark", {
iconStyle : {
href : "http://api-maps.yandex.ru/i/0.3/placemarks/pmlbm2.png",
size : new YMaps.Point(28,29),
offset: new YMaps.Point(-8,-27)
}
}


map.addOverlay(createObject("Placemark", new YMaps.GeoPoint(37.681721,55.894868), "constructor#pmlbm2Placemark", "91 км. МКАД
")

Я пытаюсь вставить другой стиль так  как написано  в руководстве, вставив конструкцию

map.addOverlay(createObject("Placemark", new YMaps.GeoPoint(37.626385,55.79179), {style: "default#shopIcon"}, "91 км. МКАД
")

А ту конструкцию что указана в начале  - убираю, включая YMaps.Styles.add

Но при выгрузке карты всё равно висят стандартные конструкторские метки. Непонятно откуда они подгружаются. Как всё-таки правильно сделать?

2 комментария
Подписаться на комментарии к посту

У Вас же написано что функция createObject принимает стиль ввиде строки третьим параметром,

а ниже Вы зачемто передаете ей объект {style: "default#shopIcon"}

Нужно передавать просто "default#shopIcon"

Пытаюсь сделать то же самое немного по-другому (потому что надо переопределить и стиль балуна и стиль метки) и опять не получается
    var s = new YMaps.Style();
    s.balloonContentStyle = new YMaps.BalloonContentStyle(
    new YMaps.Template("$[description]")
    );
    s.iconStyle = new YMaps.IconStyle();
    s.iconStyle.template = "default#shopIcon";
   

       map.addOverlay(createObject("Placemark", new YMaps.GeoPoint(37.681721,55.894868), s, "91 км. МКАД
"));

Точнее, стиль балуна получается изменить, а метка опять встаёт стандартная голубая