OpenLayers: pop-up окна

Mapserver, GeoServer, MapGuide, Google и другое ПО для веб-картографии
Ответить
Naphtizin
Интересующийся
Сообщения: 23
Зарегистрирован: 04 окт 2009, 19:22
Репутация: 0

OpenLayers: pop-up окна

Сообщение Naphtizin »

Здравствуйте. Сделал на своей карте пару маркеров, при клике по маркерам появляются pop-up окна с информацией. Пользовался вот этим примером: openlayers.org/dev/examples/popupMatrix.html
Знает ли кто-нибудь как сделать чтобы окно всплывало не при клике, а при наведении курсора на маркер?
Заранее благодарен.
Аватара пользователя
wmk
Активный участник
Сообщения: 102
Зарегистрирован: 11 янв 2009, 17:38
Репутация: 0
Откуда: Казань
Контактная информация:

Re: OpenLayers: pop-up окна

Сообщение wmk »

В примере есть строчка:
marker.events.register("mousedown", feature, markerClick);

Попробуй изменить событие на например mousemove , mouseout , mouseover
OurGuns.ru - пневматическое оружие России и мира
Пневматическое оружие , Страйкбольное оружие , Пейнтбольное оружие
Naphtizin
Интересующийся
Сообщения: 23
Зарегистрирован: 04 окт 2009, 19:22
Репутация: 0

Re: OpenLayers: pop-up окна

Сообщение Naphtizin »

Спасибо! Написал так:
marker.events.register("mouseover", feature, markerClick);
marker.events.register("mouseout", feature, markerClick);
"mouseover" - для того чтоб окно появлялось и "mouseout" - чтоб исчезало.
Может не совсем правильно, но работает.
Еще раз спасибо.
Naphtizin
Интересующийся
Сообщения: 23
Зарегистрирован: 04 окт 2009, 19:22
Репутация: 0

Re: OpenLayers: pop-up окна

Сообщение Naphtizin »

Возникла новая проблема - сделал popup появляющийся по нажатию кнопки:

Код: Выделить всё

        function add() {
            popup = new OpenLayers.Popup("chicken", 
                                         new OpenLayers.LonLat(9222089.24280,7359384.47360),
                                         new OpenLayers.Size(100,100),
                                         "example popup",
                                         true);
            popup.closeOnMove = true;
            map.addPopup(popup, popupClass);
        }  
...

<button onclick="add(9222089.24280,7359384.47360)">Button</button>
Нужно чтобы окно имело форму облака (FramedCloud).
Пробовал так:

Код: Выделить всё

function add() {
            popup = new OpenLayers.Popup.FramedCloud("chicken", 
                                         new OpenLayers.LonLat(9222089.24280,7359384.47360),
                                         new OpenLayers.Size(100,100),
                                         "example popup",
                                         true);
            popup.closeOnMove = true;
            map.addPopup(popup);
        }
и так:

Код: Выделить всё

        AutoSizeFramedCloud = OpenLayers.Class(OpenLayers.Popup.FramedCloud, {
            'autoSize': true
        });

        function add() {
            popup = new OpenLayers.Popup("chicken", 
                                         new OpenLayers.LonLat(9222089.24280,7359384.47360),
                                         new OpenLayers.Size(100,100),
                                         "example popup",
                                         true);
            popupClass = AutoSizeFramedCloud;
            popup.closeOnMove = true;
            map.addPopup(popup);
        }  
В первом случае popup окно ввобще не появляется, во втором появляется, но такое как и было.
Может кто подскажет где я допускаю ошибку!?
Аватара пользователя
Mavka
Гуру
Сообщения: 2060
Зарегистрирован: 14 мар 2008, 17:36
Репутация: 9

Re: OpenLayers: pop-up окна

Сообщение Mavka »

У меня работает - Geosample (см. код здесь).

У вас, на первый взгляд, не хватает параметра между "example popup" и "true". Это anchor, можно принять равным "null".
лангольеры под окном жрали время ом-ном-ном
Naphtizin
Интересующийся
Сообщения: 23
Зарегистрирован: 04 окт 2009, 19:22
Репутация: 0

Re: OpenLayers: pop-up окна

Сообщение Naphtizin »

Да, действительно. Так и есть. Теперь всё работает. Большое спасибо!
Ответить

Вернуться в «Веб-картография»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя