2013-08-22 1 views
8

Я использую этот код, чтобы создать маркер и InfoWindow, который показывает после нажатия на маркер:InfoWindow значок закрытия не отображается в Google Map

// latLng and map are created earlier in code 
var marker = new google.maps.Marker({ 
     position: latLng, 
     map: map 
    }); 

// contentString is just a string with content also created earlier 
google.maps.event.addListener(marker, 'click', function(){ 
     infowindow.setContent(contentString); 
     infowindow.open(map, marker); 
    }); 

Этот код производит все хорошо, кроме одного, он не показывает закрытие значок в верхнем правом углу информационного окна.

enter image description here

Любой знает, что может быть проблема?

Я использую meteor.js, если это делает никакой разницы

Это, как я создать InfoWindow:

var infowindow = new google.maps.InfoWindow(); 
+1

Ваш код работает для меня (в инфо-окне отображается значок закрытия). Возможно, проблема css? Вы можете как эксперимент, попробуйте «версия выпуска» (укажите v = 3 в скрипте). – geocodezip

+0

Не работает. Что это может быть в css? Я живу редактированием свойств css в консоли Google Chrome, но не могу найти решение. – Drag0

+0

, когда функция infowindow не работает, вам лучше добавить код, в котором вы создаете infowindow –

ответ

35

Вот решение проблемы ... Кажется Google Maps иметь некоторый забавный способ иметь дело с изображениями, и возникла проблема с css, как мы думали. Таким образом, решение просто добавить это в файл CSS:

img 
{ 
    max-width: none; 
} 

Вот это, наслаждайтесь.

+1

Сумасшедший. Sooo спасибо! – ninjacolin

+3

Работал, спасибо! Я бы, по крайней мере, только установил атрибут на изображения на карте так: '#map_canvas img {max-width: none;}'. В противном случае каждое изображение на веб-сайте не имеет максимальной ширины (и это может нарушить отзывчивый дизайн) –

11

У меня была та же проблема. В моем случае, infowindow не показывает указатель на маркер. В infowindow есть некоторые странные образы.

Видимо, это связано с таблицей стилей из бутстрапа, конфликтующей с Google. Ниже гораздо более конкретные CSS, а не перекрывая общий CSS

/** FIX for Bootstrap and Google Maps Info window styes problem **/ 
img[src*="gstatic.com/"], img[src*="googleapis.com/"] { 
max-width: none; 
} 
+0

Это лучшее решение, так как это не повлияет на какие-либо из наших предопределенных правил img. –

+1

Работал для меня ... возможно, захочет добавить важный флаг, чтобы убедиться - img [src * = "gstatic.com/"], img [src * = "googleapis.com/"] {max-width: none !важный;} – Redtopia

5

В зависимости от других таблиц стилей, которые могут понадобиться, чтобы добавить! Важный переопределение ...

img[src*="gstatic.com/"], img[src*="googleapis.com/"] { 
max-width: none !important; 
} 
Смежные вопросы