Клуб API Карт

Смена метки на карте (возможно баг)

Byte916
8 апреля 2016, 15:16

Добрый день

Используется последняя версия карт, которая берется с яндекса по ссылке

https://api-maps.yandex.ru/2.1/?lang=ru_RU&load=package.full

На карте есть метки, которые устанавливаются вот так

preset: 'islands#nightCircleDotIcon',

Также есть таблица со списком меток, при наведении на которые соответствующая метка меняется (а при покидании мыши возвращается) так

        $('#point' + f.Id).mouseenter(function () {
            o.options.unset('iconLayout').set('preset', 'islands#redDotIcon').set('zIndex', '10000')
        });
        $('#point' + f.Id).mouseleave(function () {
            o.options.unset('zIndex').set('preset', 'islands#nightCircleDotIcon')
        });

Собственно, проблема заключается в следующем:

До наведения мыши, и после её покидания

В то время, когда мышь над обьектом

Изменений в код сайта не вносил, проблема появилась сама. В чем может быть проблема, и как её исправить?

8 комментариев
Подписаться на комментарии к посту
дайте ссылку на сайт
dimik,
http://exchg.ru/search/
Скрипт, в котором логика работы с картой вот тут -> http://exchg.ru/Js/exchangesearch?v=ZaM1_uQg-g9Q5g-kh2cQ46uRqmp2uIM_jGSnyQtTBwY1
dimik,
Да, возможно это поможет - последний релиз был 24 марта, тогда всё точно работало как надо. На вроде бы я проверял, всё тоже работало, но когда точно не вспомню. Сегодня всё работает не как надо.
Byte916,
> http://exchg.ru/Js/exchangesearch?v=ZaM1_uQg-g9Q5g-kh2cQ46uRqmp2uIM_jGSnyQtTBwY1

Наверное надо необфусцированную версию дебажить.
Еще у вас там ошибка js в 78 строке index.html
if (prepName.indexOf("Владимирской") !== -1) prepName = "во " + prepName;
в prepName приходит undefined

И надо убрать css-селектор на звездочку *
dimik,
Да в общем со стороны сервера ошибки у меня быть не может, потому что эта часть меняется редко и проверяется после смены. Поэтому я и предположил что это новая версия js яндекс.карт содержит баг, что и подтвердилось.
Насчет деобсфукации - у меня firebug неплохо с этим справляется. Но вы правы, я не подумал о неудобстве, в следующий раз буду иметь ввиду.
Ошибка в строке 78, о которой вы говорите, была когда то давно, и давно уже пофиксена. Сейчас мне не удалось её воспроизвести. Может вы посещали сайт ранее, и у вас что нибудь загрузилось из кеша? Какой браузер?
Насчет селектора на звёздочку, это reset стилей браузера. Будет ли быстрее работать, если перечислить все возможные элементы? Я не уверен)
Byte916,
Звездочка аффектит стили DOM-элементов АПИ карт.
Ошибка в chrome, на сайт раньше не заходил.
Повторил баг в песочнице. На прошлой версии (2.1.35) всё ок.
https://yandex.ru/blog/mapsapi/5703979b1a82ba507fd03aa9/57079b379fb726175ee04aad
dzot6,
Спасибо!