谷歌地图自定义指针不起作用



我已经把谷歌地图java脚本代码放在我的网站中,但它不起作用。这是代码

function map_initialize() {
        var latlng = [
        __lats_and_langs__
    ];
        if (google.maps.BrowserIsCompatible()) {
                            var image = new google.maps.MarkerImage("http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=15|FF0000|000000",
                            new google.maps.Size(20, 34),
                            new google.maps.Point(0, 0),
                            new google.maps.Point(10, 34));
            map = new google.maps.Map2(document.getElementById('salon_map'));
            map.addControl(new google.maps.LargeMapControl3D());
            map.addControl(new google.maps.MenuMapTypeControl());
            map.setCenter(new google.maps.LatLng(0, 0), 0);
                            for (var i = 0; i < latlng.length; i++) {
                                var marker = new google.maps.Marker({
                                position: latlng[i],
                                map: map,
                                icon: image,
                                title: location[0],
                                zIndex: location[3]
                                });
                                //var marker = new google.maps.Marker(latlng[i]);
                map.addOverlay(marker);
            }
            var latlngbounds = new google.maps.LatLngBounds();
            for (var i = 0; i < latlng.length; i++) {
                latlngbounds.extend(latlng[i]);
            }
            map.setCenter(latlngbounds.getCenter(), map.getBoundsZoomLevel(latlngbounds));
                            map.setZoom(12);
            // put markers and custom icon ??
            __marker_list__
        }
    }
//  google.maps.Event.addDomListener(window, 'load', map_initialize);
    google.maps.Event.addDomListener(window, 'unload', google.maps.Unload);

网址是 : http://myshopsalon.com/find-a-shop-salon

标记在那里(您可能已经注意到地图左上角的单个标记,它不是 1 个标记,所有这些标记都放置在此位置)

原因:您使用的是地图库 V2,但您使用 V3 中预期的参数创建了标记。

在 V2 中,第一个预期参数是 LatLng,没有别的。

var marker = new google.maps.Marker(latlng[i],{/*markerOptions*/});

(我省略了这些选项,因为您对图标犯了同样的错误)

澄清一下:使用 V2 时,必须使用如下所述的方法:https://developers.google.com/maps/documentation/javascript/v2/reference

最新更新