6

我在我的谷歌地圖標記圖標在Internet Explorer中有一個奇怪的問題。我所有的標記都顯示出削減了一半,並且轉移了超過50%。谷歌地圖標記切成兩半Internet Explorer

http://imgur.com/bPmLC

,其使用來自谷歌演示代碼

。所以它必須是奇怪的,我在其他地方使用樣式或jQuery,但我不知道是什麼。有沒有人有過這個問題?

+0

最近我有我的谷歌地圖演示jsfiddle也奇怪的行爲。在我看來,渲染不會刷新得很好。所以,我所做的是在應用更改後映射「map.setCenter();'然後重新縮放。此外,這個問題似乎涉及地圖上的任何覆蓋。 – kjy112 2011-04-25 16:20:22

回答

2

我通過使用API​​,就像一個穩定版本修正了這個問題...

http://maps.google.com/maps/api/js?v=3.2&sensor=false

,而不是每晚構建開發...(http://maps.google.com/maps/api/js?sensor = false)

+0

這固定了我遇到的IE7特定問題。謝謝 – David 2011-05-23 21:36:38

+0

好吧,我設法解決這個問題,通過如上所述的鏈接,但它突然開始再次打破。其他人有這個問題? – 2011-09-08 15:15:04

+0

Did not for me – 2012-02-29 10:37:22

6

我有類似的問題。 問題是,每個標記圖標都繼承了> 0的邊距,我通過將地圖div中的所有img的邊距設置爲零來解決了問題。

<style type="text/css"> 
    #map_canvas img { 
     margin: 0px 
    } 
</style> 
+0

這對我來說也是問題。該API爲Firefox和Chrome生成不同的元素,因此您無法使用Firebug。要找出在IE中遇到什麼樣的風格,請使用IE7瀏覽器模式,並確保在加載地圖後點擊「開發工具」工具欄中的刷新按鈕。這將刷新DOM,並讓您選擇標記圖像來檢查它。使用「跟蹤樣式」窗格查找違規樣式。 – Jerph 2011-09-22 15:20:03

1

我已經類似的問題,(I使用的自定義標記圖像,並且它們是由1像素移位IE7-8左和底部)

此代碼解決了這個問題:

<!--[if IE]> 
    <style> 
    div#map img{ 
     margin-top: -1px; 
     margin-left: -1px; 
    } 
    </style> 
<![endif]--> 

其中map是谷歌地圖api容器div的id。

+0

工作很好!希望它不會違反新版本 – 2012-02-29 10:38:17

0

我試過上面的#map_canvas img { margin: 0px; }解決方案,但它只有一半工作。我將其更改爲#map_canvas img { margin: -5px; }並應用於IE7 & IE8樣式表。

1

我有同樣的問題;我必須設置邊距和填充,以0兩個:

#map img { 
    margin:0px; 
    padding:0px; 
} 
0

各地值parseInt函數使之成爲我

new google.maps.Size(parseInt(width), parseInt(height)) 
new google.maps.Point(parseInt(width)/2, parseInt(height)) 
4

你的問題很有趣,因爲它是用默認的標誌物發生好。我在博客中描述的類似問題進行自定義標記於2012年二月: http://www.gutensite.com/Google-Maps-Custom-Markers-Cut-Off-By-Canvas-Tiles

當我們正在與谷歌地圖API 3.8版的問題(比其他幾個人誰在這裏提出的解決方案更新)。自定義標記將被切斷,而默認標記不會。我們發現這是由用於優化Google地圖顯示方式的新Canvas圖塊引起的。如果你檢查元素,你可以看到標記實際上是瓷磚層。

如果我們關閉'優化'(見下面的代碼)標記正確顯示!所以它似乎與優化代碼有關。

var point = new google.maps.Marker({ 
'position': position, 
'map': this.options.map.construct, 
'icon': marker_data.custom_icon,  
'title': marker_data.title, 
'optimized': false 
}); 

我還沒有證實是否因爲當時還是沒有此問題已得到修復由谷歌,或是否有更好的解決方案。

其他人建議,如果你parseInt()標記的寬度和高度,它解決了他們的問題。

查看鏈接文章的圖片。 Stackoverflow不會讓我包括他們,因爲我沒有足夠的聲譽點: - \

+0

真棒解決方案。這解決了我的問題。我只需要在我的請求中添加'optimizeWaypoints:false' – Tschallacka 2015-12-03 13:33:59