4

我正在尝试使用 google maps api(最新版本,3.9.2)创建一个 MarkerShape 对象。不幸的是,似乎没有加载 MarkerShape api:这是 firebug 的控制台向我显示的内容:

>>> google.maps.version

“3.9.2”

>>> google.maps.MarkerShape

不明确的

难道我做错了什么 ?MarkerShape 的 gmaps 文档的最新版本在这里:https ://developers.google.com/maps/documentation/javascript/reference#MarkerShape

谢谢

编辑:这里是 jsfiddle 的一个例子:http: //jsfiddle.net/vszHk/6/或者只是去一个官方的例子,比如这里https://google-developers.appspot.com/maps/documentation/javascript/examples/地图简单和开放的萤火虫

4

2 回答 2

8

我认为您的问题是您试图将 google.maps.MarkerShape 视为构造函数。它只是一个对象,而不是构造函数。

因此,执行以下操作是错误的,因为 google.maps 对象中没有 MarkerShape 方法:

var marker_shape = new google.maps.MarkerShape(); 

要创建 MarkerShape,您只需创建一个对象文字:

var marker_shape = {coords: [0,0,50,50], type: "rect"}

然后,您可以将其添加到传递给 google.maps.Marker 构造函数的对象文字中。例如。

marker = new google.maps.Marker({
    position: lat_lng_object,
    map: map,
    shape: marker_shape
});
于 2012-07-31T07:46:31.727 回答
1

鉴于 3.9.2 是最新的 Nightly 版本,您是否尝试过参考更旧的更稳定版本,例如 3.9.1 或 3.8(最新发布版本)

https://developers.google.com/maps/documentation/javascript/basics#Versioning

例如http://maps.googleapis.com/maps/api/js?v=3.8&sensor=false

于 2012-06-12T16:07:25.803 回答