Клуб API Карт

Прозрачность метки

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

Привет, возникла проблема с установкой прозрачности метки.

Сохранил ваш пример http://api.yandex.ru/maps/doc/jsapi/2.x/examples/markersicon.html на компьютер.
Добавляю в объект options согласно документации свойство opacity: 0.3, обновляю, но не вижу изменений.

var point = getRandomCoordinates(bounds[0][0], bounds[1][0], bounds[0][1], bounds[1][1]),
    myPlacemark = new ymaps.Placemark(point, {
        // Свойства.
        // Текст метки.
        iconContent: i + 1
    }, {
        preset: styleKeys[i],
        opacity: 0.3
    });


Подскажите, пожвлуйста, что я делаю не так.

 

13 комментариев
Sergey Konstantinov
28 января 2016, 02:32
Прозрачность применяется только к графическим фигурам (линиям и многоугольникам).

1. почему?

2. как это можно понять из документации?

Sergey Konstantinov
28 января 2016, 02:32
1. Потому что в IE нельзя наложить opacity
2. Никак :(

1. могу на вскидку сказать что еще в ИЕ не работают пунктирные стили для обводки и скругления углов у Rectangle, однако это не помешало их сделать. предлагаю так же поступить с прозрачностью.

2. либо надо написать об этом, либо см. п.1

Sergey Konstantinov
28 января 2016, 02:32
Сделай таск.

Все работает, надо только стили задавать не массивами а ключами из strokeStyle

Ну получается что произвольную длину пунктира/разрыва я задать не могу.

Только предустановленные ключами?

Это не "всё работает"

Это придумал не я. VML не понимает ничего кроме своих ключей.

Точнее в документации то сказано что можно, но по факту - только ключики работают.

а я тебя и не виню ))))

просто говорю что поведение обводки для ИЕ и не ИЕ разное

Хорошо, с помощью вашего api я решить проблему не могу, но мне ведь ничего не мешает выбрать нужные маркеры в DOM'e и задать им нужное opacity либо через style, либо через class?

Осталось понять, как их выбрать :)

Sergey Konstantinov
28 января 2016, 02:32
Никто не мешает просто отрисовать метки с нужной прозрачностью в любом графическом редакторе.

прозрачость динамически нужно менять для 300 маркеров с кастомными иконками, у которых на разных зумах еще и разные иконки, поэтому, думаю, все-таки через DOM их искать

Если у вас просто куча иконок без текста - добавьте меткам опцию overlayFactory:'default#interactiveGraphics'

Уйдете на графику где работает прозрачность. Но она там называется iconOpacity

В ИЕ система автоматически переключится на обычный DOM