Клуб API Карт

Прозрачность пользовательского тайлового слоя

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

Не нашел в документации возможность задать прозрачность тайлового слоя. Странно, что изменение яркости предусмотрели (которое, на мой взгляд, менее полезно), а прозрачности - нет.

Возможно, я что-то не доглядел, или есть недокументированная возможность?

5 комментариев
Sergey Konstantinov
27 января 2016, 22:19
Эти опции не меняют ни яркость, ни прозрачность — они как раз для того, чтобы разработчик мог сообщить API яркость и прозрачность отрендеренного им слоя.
Дмитрий Быков
15 сентября 2017, 01:26
Может кому-то пригодится. Есть не очень красивый и правильный, но эффективный способ.
Пример:
$("#mymap canvas:eq(1)").fadeto("slow",0.3);
тут мы выбираем элемент на котором рисуется карта и делаем его прозрачным.
здесь #mymap - идентификатор карты (родительского блока), eq(1) - номер  слоя карты, начиная с 0, "slow" - медленный, плавный переход, 0.3 - 30% непрозрачности.


К сожалению, fadeto не работает в IE < 9. Для него надо отдельно писать (хотя эти браузеры давно не поддерживаются).
Обновлено 15 сентября 2017, 01:27
Дмитрий Быков
14 октября 2017, 15:10
Лучше использовать селектор
#mymap ymaps-2-1-55-ground-pane>ymaps:eq(1) 
Он более универсален и работает во всех браузерах. Правда, придется подключить фиксированную версию API.
<script src="https://api-maps.yandex.ru/2.1.55/?lang=ru_RU" type="text/javascript"/>



Соответственно, цифры в селекторе и ссылке заменить на нужную версию.
Обновлено 14 октября 2017, 15:10
Дмитрий Быков
14 октября 2017, 15:34
#mymap .ymaps-2-1-55-ground-pane>ymaps:eq(1)


точку пропустил
Обновлено 14 октября 2017, 15:35
.fadeTo("slow",0.3);
в fadeTo - "T" заглавная. Не сразу обратил внимание, не мог понять почему не работает