3

http://bit.ly/xkHPnU谷歌地图API V3 - IE7 - main.js错误 - 无效的参数(JavaScript)的

我看了所有的时序问题,我似乎无法纠正此错误。在IE7和兼容模式下发生警告错误。

Webpage error details 

User Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; Tablet PC 2.0) 
Timestamp: Fri, 2 Mar 2012 21:58:06 UTC 


Message: Invalid argument. 
Line: 27 
Char: 56 
Code: 0 
URI: http://maps.gstatic.com/intl/en_us/mapfiles/api-3/7/12/main.js 

需要另一套眼睛。

谢谢。

+0

所以答案,你尝试了我在我的答案中解释? – Cheery 2012-03-03 18:46:25

+0

@Cheery - 见下文 - 有趣的问题,但解决了一个有趣的问题。 ;) – Jason 2012-03-04 01:40:43

回答

3

问题出现在第27行,在这里:e.minWidth=W(d)W(d)的结果等于'-12px',IE不希望将负值设置为minWidth属性。

进一步的调试,我可以看到这个代码与地图控件的绘制。此外,该问题仅适用于Map/Satellite视图之间的切换按钮(值为c变量为“路标”)。此外,它看起来像通过触发onchange事件来执行代码,该事件可能会连接到地图上的选项卡。作为一项测试,我在Proxomitron中用一条简单的规则删除了这些选项卡,并且该错误不再出现。

所以,尽量放置在这样的位置或方式(例如具有对父DIV设置为相对和绝对位置和top CSS属性的负值片的父位置)的那些标签,在它们的下方部在初始化期间不会更改大小(制表符脚本应用于它们),或者在渲染之后初始化您的Google地图(设置一些延迟)。

+0

感谢您的帮助。我一直在考虑这个问题太久了。奇怪的问题 - 在mapOptions中,我留下了'mapTypeControlOptions:'空白,并且默认为水平栏,它会抛出错误。但是通过显式声明'mapTypeControlOptions:',它解决了这个问题。 – Jason 2012-03-04 01:34:21

+0

@Jason这是API的典型问题之一:)当某些东西被跳过或省略时,可能会导致错误。但是你有很多js代码,所以我决定深入研究原因,而不是去检查一些缺失的参数。但是,是的,问题是由于地图初始化过程中地图大小的改变而发生的。 – Cheery 2012-03-04 01:50:16

3

设置这样

mapTypeControl:true, 
mapTypeControlOptions: { 
    style: window.google.maps.MapTypeControlStyle.DROPDOWN_MENU 
} 

将解决这个问题。

0

用给定的解决方案没有解决此问题。

我用两个谷歌地图,并使用相同的jQuery的1.4.1.min.js文件。 但是,当我跑个人然后它正在运行。 但是,当使用两个地图。然后 e.minWidth = x(D)与-12px值一起作为相同的计算器溢出问题。 所以请给我提供解决方案。

0

我在IE8中有同样的问题。当MAP在IE弹出开放和开放的调试模式无效的参数将出现

我通过附加解决“MapTypeControl中”和“的mapTypeControlOptions”之类的user2884829

var map = new google.maps.Map(document.getElementById('map_canvas'), { 
    zoom: 19, 
    center: latLng, 
    mapTypeId: google.maps.MapTypeId.ROADMAP, 
    mapTypeControl: true, 
    mapTypeControlOptions: { 
     style: window.google.maps.MapTypeControlStyle.DROPDOWN_MENU 
    } 
});