Google Maps JavaScript API错误在Internet Explorer中
我已经为Google Maps JavaScript API v3编写了一个非常简单的jQuery插件。Google Maps JavaScript API错误在Internet Explorer中
它工作在Firefox,Chrome浏览器(等人),但不是Internet Explorer 8
我得到的错误是“对象不支持此属性或方法”在下面的行...
map = new google.maps.Map(mapContainer, myOptions);
我已经把一个工作示例页面在线展示......我试图让白金汉宫!你可以在jquery.simplemap.js文件中看到后面的代码,它没有被缩小。
http://www.stevefenton.co.uk/cmsfiles/assets/File/simplemap.html
任何帮助将非常感激。
UPDATE
我已经通过这个代码做了详细的调试,它实际上是谷歌的代码,这在很大程度上微细化以及完全无法辨认里面的错误 - 这就是为什么地图加载,如误差后地图被初始化。当我知道它时,我会张贴更多。
UPDATE2
我已经重新排列各种事物的插件,从而导致越来越地图,以显示正确的位置,但由于发生的谷歌地图API在深错误时,地图被初始化,我不能添加标记或标注。
好吧,我已经找到了解决这一问题。
从Google Maps API内部引发的错误是由用于存储地图的变量的范围引起的。所有的API使用像这样的例子中...
map = new google.maps.Map(mapContainer, myOptions);
注意,“地图”在这些奇妙神秘的范围变量之一,另外,我跑所有这些代码里面我jQuery插件 - 最终的结果是Google Maps API无法获取地图变量的句柄。
通过将map声明为全局变量,Google Maps API可以访问它,并且神奇的一切都开始完美运行。
所以解决方法是申报...
var map;
在全球范围内,因此API可以得到它。
我认为这只是时间问题。尝试从HTML在进行此调用:
$("#map").simplemap({ search: "Buckingham Palace, London", description: "Buckingham Palace,<br>London" });
的准备:
$.ready(function() {
$("#map").simplemap({ search: "Buckingham Palace, London", description: "Buckingham Palace,<br>London" });
});
奇怪的是,地图加载无论如何... – Hamish 2011-01-31 23:50:49
@Hamish - 同意,地图加载,但地址不。 – Fenton 2011-02-01 08:43:44