Страница 1 из 1
OpenLayers: pop-up окна
Добавлено: 23 янв 2010, 19:21
Naphtizin
Здравствуйте. Сделал на своей карте пару маркеров, при клике по маркерам появляются pop-up окна с информацией. Пользовался вот этим примером:
openlayers.org/dev/examples/popupMatrix.html
Знает ли кто-нибудь как сделать чтобы окно всплывало не при клике, а при наведении курсора на маркер?
Заранее благодарен.
Re: OpenLayers: pop-up окна
Добавлено: 24 янв 2010, 00:00
wmk
В примере есть строчка:
marker.events.register("mousedown", feature, markerClick);
Попробуй изменить событие на например mousemove , mouseout , mouseover
Re: OpenLayers: pop-up окна
Добавлено: 24 янв 2010, 09:03
Naphtizin
Спасибо! Написал так:
marker.events.register("mouseover", feature, markerClick);
marker.events.register("mouseout", feature, markerClick);
"mouseover" - для того чтоб окно появлялось и "mouseout" - чтоб исчезало.
Может не совсем правильно, но работает.
Еще раз спасибо.
Re: OpenLayers: pop-up окна
Добавлено: 28 фев 2010, 09:44
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 окно ввобще не появляется, во втором появляется, но такое как и было.
Может кто подскажет где я допускаю ошибку!?
Re: OpenLayers: pop-up окна
Добавлено: 28 фев 2010, 13:48
Mavka
У меня работает -
Geosample (см. код
здесь).
У вас, на первый взгляд, не хватает параметра между "example popup" и "true". Это anchor, можно принять равным "null".
Re: OpenLayers: pop-up окна
Добавлено: 28 фев 2010, 15:53
Naphtizin
Да, действительно. Так и есть. Теперь всё работает. Большое спасибо!