2016-05-26 5 views
3

У меня возникла проблема. Мой API-интерфейс google отображает значение по умолчанию InfoWindow с цветом фона white.I хочу изменить белый цвет на черный цвет. REF CODE:Как изменить InfoWindow Цвет фона

google.maps.event.addListener(marker, 'mouseover', function() { 


    infoWindow.setContent(html); 
     infoWindow.open(map, marker); 
       //infoWindow.setStyle("background-color: red"); 


     }); 
+0

Duplicate: http://stackoverflow.com/questions/15140803/styling-infowindow-with-google-maps-api? –

ответ

9

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

Поскольку мы можем добавить наш собственный html и создать его. Элемент фона маркера в основном является тем, который вызывает проблему. Для простого стиля вместо изучения всей новой библиотеки мы можем просто удалить этот элемент с помощью jQuery.

Вставьте этот код в функцию init, и он удалит элемент фона.

google.maps.event.addListenerOnce(map, 'idle', function(){ 
    jQuery('.gm-style-iw').prev('div').remove(); 
}); 

Теперь вы можете свободно создавать свои собственные div. Я разработал infoWindow в своем проекте, используя этот подход. enter image description here

Надеюсь, это поможет.

+0

Это решение сработало :-) –

3

Вы можете использовать Infobox здесь в Google Maps Utility.

Этот класс ведет себя как google.maps.InfoWindow, но он поддерживает несколько дополнительных свойств для расширенного стиля. InfoBox также можно использовать в качестве метки карты.

Вы также можете использовать CSS, чтобы создать его. Путем проверки этого tutorial и this, он даст вам пример кода о том, как это сделать.

+2

Первая ссылка не работает, возможно, InfoBox [был удален] (http://stackoverflow.com/questions/37171426/google-maps-api-v3-infobox-js-removed). – T30