Виталий Бохин
953 сообщения
#10 лет назад
создал карту, прикрутил свои метки, повесил события клика, но вот не получается сделать смену картинки по ховеру, и фиксирование этой картинки при клике, помогите кто делал, перерыл документацию, препробовал не работает, вот код, что работает 
[code]var map;  
   ymaps.ready(function(){
       map = new ymaps.Map("map", {
           center: [59.951758589403376,30.30214186010742],
           zoom: 11
       });
       var myPlacemark = new ymaps.Placemark([59.97891231106809,30.36239500341795], {}, {
        iconLayout: 'default#image',
        iconImageHref: 'images/baloon.png',
        iconImageSize: [44, 55],
        iconImageOffset: [-3, -42]
       });
       var myPlacemark2 = new ymaps.Placemark([59.93087247881672,30.354841902832025], {}, {
        iconLayout: 'default#image',
        iconImageHref: 'images/baloon.png',
        iconImageSize: [44, 55],
        iconImageOffset: [-3, -42]
       });
       map.geoObjects.add(myPlacemark);
       map.geoObjects.add(myPlacemark2);
 
       myPlacemark.events.add('click', function (e) {
        $('#adr1').hide();
       });
   });
[/code]
Виталий Бохин
953 сообщения
#10 лет назад
vovka-morkovka, а конкретней? как заменить картинку при клике?
[code]myPlacemark.events.add('click', function () {
        $('.adress').hide();
        $('#adr1').show();
       $(this).hide();
       });
[/code]конструкция c this не работает, и как по ховеру поменять? 
Ярослав Ш.
145 сообщений
#10 лет назад
lufter, ну попробуйте добраться до блока внутри айфрейма, у джеквери есть contains
Елена Б.
6863 сообщения
#10 лет назад
[offtopic][quote=tyty]опробуйте добраться до блока внутри айфрейма[/quote]
Высший пилотаж, что уж там. [/offtopic]
Сергей Глушко
834 сообщения
#10 лет назад
киньте ссылку на страницу где утето все висит, будет проще понять причину)
Владимир Р.
3315 сообщений
#10 лет назад
[quote=lufter]vovka-morkovka, а конкретней?[/quote][code]myPlacemark.events.add('hover', function (e) {
   var p = e.get('target');
   p.properties.set('свойство', 'новое значение');
});
[/code]
Виталий Бохин
953 сообщения
#10 лет назад
tyty, она не в фрейме, не получается выловить класс/ид метки
micros,
vovka-morkovka
[code]myPlacemark.events.add('hover', function (e) {
        var p = e.get('target');
        p.properties.set('iconImageHref', 'images/baloon2.png');
       });
[/code]и не работает, пробовал по разному
Владимир Р.
3315 сообщений
#10 лет назад
lufter, пардон, обманул. Путь к иконке лежит в options.
[code]myPlacemark.events.add('hover', function (e) {
    var p = e.get('target');
    p.options.set('iconImageHref','путь к новой иконке');
});
[/code]Проверил - работает.
Я не часто работаю с Яндекс API. Мне простительно  Распечатали бы объект, сразу бы сами увидели.
Елена Б.
6863 сообщения
#10 лет назад
lufter, попробуйте порыть в сторону 
[code]
myPlacemark.options.set({ });[/code]
vovka-morkovka,  опередил
Виталий Бохин
953 сообщения
#10 лет назад
vovka-morkovka,  ода! работает. еще бы зафиксить при клике, будет совсем чудно, хотя фиксить наверное не стоит. Огромнейшее спасибо!
Ярослав Ш.
145 сообщений
#10 лет назад
floppox
[offtopic]представьте на минутку что апи яндекса не поддерживает евент ховера, что тогда будете делать[/offtopic]? 
Виталий Бохин
953 сообщения
#10 лет назад
tyty, это было бы нереально, в наш век веб технологий, просто сразу не понятно (из их документации), как это сделать, ну а сли нет- сделал бы карту картинкой, и сказал бы заказчику, что шляпа
Елена Б.
6863 сообщения
#10 лет назад
tyty, манипулирование содержимом ифрейма невозможно в принципе из соображений безопасности. 
Виталий Бохин
953 сообщения
#10 лет назад
floppox, это да, карта яндекс не в фрейме в принципе
vovka-morkovka, вопрос ламерский - как распечатать объект в javascript? простой функции как в пхп (print_r) не наблюдаю
Ярослав Ш.
145 сообщений
#10 лет назад
lufter, вы на страницу хотите вывести данные или в консоль? 

Если на страницу, тогда toString()

UPD

На страницу JSON.stringify({});
В консоль console.log({})