在Google地图中禁用信息窗口阴影(v2)

时间:2010-12-14 19:26:39

标签: javascript google-maps google-maps-markers

有没有办法为标记的信息窗口禁用自动生成的阴影?

我正试图解决在http://www.google.com/support/forum/p/maps/thread?tid=69bcc3217ee1ac68&hl=en报告的错误,其中阴影周围有大的黑色标记,在IE 8中以100%以外的任何缩放级别查看时,会遮挡地图视图。< / p>

3 个答案:

答案 0 :(得分:1)

看起来,对于IE 8,你必须遍历dom,找到阴影图像(iws3.png),然后隐藏它们。如果您有jQuery可供使用,那么它就像

一样简单
$('img[src$="iws3.png"]').hide();
地图加载后

或者,如果你没有jQuery,就像......

var i, imgs = document.getElementsByTagName('img');
for (i = 0; i < imgs.length; i++) {
    if (/iws3\.png/.test(imgs[i].src)) {
        imgs[i].style.display = "none";
    }
}

P.S。 @Crescent Fresh,这是截图: alt text

答案 1 :(得分:1)

您的问题有一个非常简单的解决方案:隐藏两个阴影层。通过这种方式,您可以确保隐藏所有对象(即使是隐藏后添加的对象)

var map = GMap2(...);
...
var pane;

//contains the info window shadow image
pane = map.getPane(G_MAP_FLOAT_SHADOW_PANE);
pane.style.display = "none";

//contains the marker shadow images
pane = map.getPane(G_MAP_MARKER_SHADOW_PANE);
pane.style.display = "none";

另一个问题是如何检测应该隐藏图层的条件......

答案 2 :(得分:0)

但在V3中你不使用GMap2

我设法使用以下css禁用阴影:

div.gmnoprint div img 
{
    display: none;
}

在V2中你有:

map.getPane(G_MAP_FLOAT_SHADOW_PANE).style.display = "none";
map.getPane(G_MAP_MARKER_SHADOW_PANE).style.display = "none";

似乎在V3中,您只能访问OverlayView (?)

中的窗格