Javascript 谷歌地图图像标记未正确放置在精灵中

Javascript 谷歌地图图像标记未正确放置在精灵中,javascript,google-maps-api-3,sprite,Javascript,Google Maps Api 3,Sprite,我正试图使用一个精灵图像谷歌地图标记,但它不显示。这是我正在使用的代码 function setMarkers(map, markers) { var google_image = new google.maps.MarkerImage("http://www.mydomain.com/images/bodycss/pointer.png", new google.maps.Size(32, 32), new google.maps.Point(28, 32)); f

我正试图使用一个精灵图像谷歌地图标记,但它不显示。这是我正在使用的代码

function setMarkers(map, markers) {

    var google_image = new google.maps.MarkerImage("http://www.mydomain.com/images/bodycss/pointer.png", new google.maps.Size(32, 32), new google.maps.Point(28, 32));

        for (var i = 0; i < markers.length; i++) {
            var sites = markers[i];
            var siteLatLng = new google.maps.LatLng(sites[1], sites[2]);
            var marker = new google.maps.Marker({
                position: siteLatLng,
                map: map,
                title: sites[0],
                zIndex: sites[3],
                html: sites[4],
                icon: google_image
            });

            var contentString = "Some content";

            google.maps.event.addListener(marker, "mouseover", function () {
                infowindow.setContent(this.html);
                infowindow.open(map, this);
            });
        }
    }
函数设置标记(映射,标记){
var google_image=new google.maps.MarkerImage(“http://www.mydomain.com/images/bodycss/pointer.png,新的google.maps.Size(32,32),新的google.maps.Point(28,32));
对于(var i=0;i

我给出的图像大小是32px*32px,图像位置点是28和32。仅显示地图而不显示标记。任何帮助都将不胜感激

乍一看可能是您设置的坐标错误?LatLng通常表示为:54.621790812770513,-3.56254943618061

你指定的位置(28,32)是沙特阿拉伯的一个点,距离任何地方100英里,除非这是你的意图

另外,您没有将地图居中放置在该点上,以便在其他地方居中时显示(在沙特阿拉伯)


如果有人解决了你的问题,也请接受答案(尽管我可能没有)。只是礼貌

您的问题可能有不同的问题。在讨论这个问题之前,需要测试的东西很少-

在不使用自定义标记的情况下测试代码,并查看标记是否正确显示。如果这不起作用,你的latlng值是错误的。如果可以,那么检查您的站点是否可以访问您的sprite图像(请参阅chrome或firebug控制台以了解错误)。如果没有错误,则可能无法正确调整位置点

在创建标记后,还要添加
map.setCenter(marker.getPosition())
,使其显示在查看区域中

更新-如果上述问题不存在,请在下一行中更改尺寸和点参数,直到找到标记


var google\u image=new google.maps.MarkerImage(“http://www.mydomain.com/images/bodycss/pointer.png,新的google.maps.Size(32,32),新的google.maps.Point(28,32))

感谢您的快速响应。实际上,LatLng的参数是正确给出的。我的意图是不显示(28,32)是一个点在沙特阿拉伯。我以为这是显示图像位置,因为我使用的是精灵图像。我想做的只是将这个图像添加到Google marker背景:url('../images/bodycss/pointer.png')28px-32px;。我很抱歉你们没有接受这个答案,因为我从来不知道有这样的功能。从现在起,我将接受你的建议。