Событие при наведении курсора на Polygon - PullRequest
1 голос
/ 22 декабря 2011

При нажатии кнопки на серверный запрос делается AJAX-запрос, который возвращает несколько путей многоугольника.Эти полигоны затем рисуются на карте.

Проблема : я добавил обработчик событий для mouseover и mouseout событий.Однако они, похоже, не стреляют.Обработчик содержит console.log, который не выполняется при наведении курсора.Чем это могло быть вызвано?

JS Code

$("#button").click(function() {
    $.getJSON(base_url + 'main/get',
                function(json) {

                    for( var i = 0; i < json.length; i++) {

                        decoded_path = google.maps.geometry.encoding.decodePath(json[i].encoded_path); 

                        var polyOptions = {
                                    strokeColor: "#4794b8", 
                                    strokeOpacity: 0.7, 
                                    strokeWeight: 1.5,
                                    fillColor: "#000",
                                    fillOpacity: 0.1,
                                    path: decoded_path, 
                                    clickable: false,
                                    map: map
                            }
                        var polygon = new google.maps.Polygon(polyOptions);
                        array_polyline.push(polygon);

                        // Add Mouseover/Mouseout Listeners
                        google.maps.event.addListener(polygon, "mouseover", function(){ console.log('Mouseover'); this.setOptions({fillOpacity: 0}); });
                        google.maps.event.addListener(polygon, "mouseout", function(){ this.setOptions({fillOpacity: 0.1}); });

                    }

        });
});

1 Ответ

2 голосов
/ 22 декабря 2011

Вам нужно либо удалить clickable: false, либо сделать clickable: true (по умолчанию)

Вам не нужно привязываться ко всем событиям (например, щелчкам), но clickable: false отключает все события мыши ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...