2012-03-12 8 views
28

Thông tin không hiển thị đúng trên bản đồ của tôi khi nhấp vào điểm đánh dấu. Trang web ở đây.Google Map Infowindow không hiển thị đúng cách

Bạn cũng sẽ thấy điều khiển bản đồ không được hiển thị chính xác.

var map; 
    var locations = <?php print json_encode(di_get_locations()); ?>; 
    var markers = [] 
    jQuery(function($){ 
     var options = { 
      center: new google.maps.LatLng(51.840639771473, 5.8587418730469), 
      zoom: 8, 
      mapTypeId: google.maps.MapTypeId.ROADMAP 
     }; 
     map = new google.maps.Map(document.getElementById("map_canvas"), options); 

     for (var i=0; i < locations.length;i++) { 
      makeMarker(locations[i]); 
     } 
     centerMap(); 

    }); 
    function makeMarker(location) { 
     var markerOptions = {map: map, position: new google.maps.LatLng(location.lat, location.lng)}; 
     var marker = new google.maps.Marker(markerOptions); 
     markers.push(marker); 
     var content = ''; 

     var infowindow = new google.maps.InfoWindow(
      { content: "test", 
      size: new google.maps.Size(50,50), 
      disableAutoPan : true 
      }); 


     google.maps.event.addListener(marker, 'click', function(e) { 
      infowindow.open(map,marker); 
     }); 
    } 
    function centerMap() { 
     map.setCenter(markers[markers.length-1].getPosition()); 
    } 

Lưu ý: Tôi đang sử dụng Google Maps JS V3.

+0

Không còn là liên kết đến trang web của bạn nữa và do đó bạn không rõ vấn đề bạn đang gặp phải. Câu hỏi của bạn vì nó đứng không có khả năng giúp đỡ bất kỳ người dùng nào trong tương lai. –

+0

Đây cũng có thể là sự cố tương tự với sự cố được mô tả ở đây: http://stackoverflow.com/questions/1554893/google-maps-api-v3-infowindow-not-sizing-correctly –

Trả lời

96

Vấn đề này được buộc bởi định dạng này bên trong style.css:

img { 
    height: auto; 
    max-width: 100%;/* <--the problem occurs here*/ 
} 

Thêm phần này vào cuối style.css của bạn để áp dụng mặc định có giá trị cho hình ảnh bên trong bản đồ:

#map_canvas img{max-width:none} 
+0

Cảm ơn! Nó đã làm việc. Cảm ơn rất nhiều vì đã chữa đau đầu! – Jenny

+1

Điều này giải quyết nó cho tôi quá. Nếu bất cứ ai muốn biết nó trông như thế nào, hãy xem http://i.stack.imgur.com/Bl8ci.png –

+1

Nó khá rõ ràng nhưng nó giúp tôi tiết kiệm thời gian. Cảm ơn bạn đời. –

1

Sự cố có thể do bạn đang sử dụng img{ max-width: 100%; } là phổ biến.

Hãy thử này để css của bạn

.gmnoprint img { 
    max-width: none; 
} 
+1

Tại sao đăng cùng một câu như câu trả lời được chấp nhận hơn 1 năm sau? – 0x1gene

+0

@ 0x1gene lý do tại sao 'img {max-width: 100%}' sẽ ảnh hưởng đến các thuộc tính css khác của dự án. Đồng thời '.gmnoprint img: {max-width: none; } 'sẽ không ảnh hưởng đến bất kỳ thuộc tính nào. – Muhammed

+3

Bạn đúng như '' '#map_canvas img {max-width: none}' '' hiện ... – 0x1gene

0

Trong trường hợp Magento google kiểm soát bản đồ zoom không được hiển thị vì mâu thuẫn với thư viện Prototype.

0

tôi giải quyết vấn đề với:

.gmnoprint img { 
    max-height: none; 
} 

thay vì max-width.

Cảm ơn