Блок подсветки боковой панели при нажатии на маркер - PullRequest
1 голос
/ 27 марта 2012

Мой текущий код Google Maps работает до такой степени, что, если я нажимаю на ссылку на боковой панели, происходит событие маркера, а затем открывается информационное окно. Что мне нужно сделать, чтобы выделить блок на боковой панели при нажатии на маркер ??

function createMarkers(point, username, st) {
    var html = '<b>' + username + '</b> <br/> ' + st;

    var marker = new google.maps.Marker({
        position: point, 
        map: map, 
        //zIndex: Math.round(point.lat()*-100000)<<5,
        title: username
    });

    //Closes any open infowindow while clicking on another marker
    infowindow = new google.maps.InfoWindow();
    google.maps.event.addListener(marker, 'click', function() {
        infowindow.close();
        infowindow.setContent(html);
        infowindow.open(map, marker);
    });

    markersArray.push(marker);

    return marker;
}

При создании маркера я также создал записи на боковой панели:

sidebar.innerHTML += '<span id="sidebarTxt">'
                                     +'<a href="javascript:sidebar_click(' + i + ')">' 
                                     + '<b>' + name + '</b> </a> <br/> ' 
                                     + 'St: ' + st + '<br />' 
                                     + 'St Preference: ' + location + '<br />' 
                                     + 'Distance from me: ' + Number(distance).toFixed(2) + 'miles <br />' 
                                     +' </span>';

Что мне нужно сделать, чтобы выделить блок на боковой панели при нажатии на маркер ??

1 Ответ

4 голосов
/ 27 марта 2012

Измените click слушатель так:

 google.maps.event.addListener(marker, 'click', function() {
    infowindow.close();
    infowindow.setContent(html);
    infowindow.open(map, marker);
    $("#sidebarTxt").toggleClass("new_style"); // this line adds the new_style to  sidebarTxt span
});

Где есть стиль

.new_style {
    border: 1px solid red;
}
...