首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在jquery-ui-map中使用个性化图标

如何在jquery-ui-map中使用个性化图标
EN

Stack Overflow用户
提问于 2012-06-04 23:38:37
回答 1查看 6.4K关注 0票数 2

使用jquery-ui-map,我尝试使用个性化图标。我用这种方式工作很好:

代码语言:javascript
复制
$("#gmap_" + parent).gmap('addMarker', { 
    "id": "marker-"+m.id,
    'position': new google.maps.LatLng(m.lat, m.lon), 
    'bounds':true,
    'icon': '/images/'+m.icon
})

因为我的图标只是一个网址。但是我想把我所有的图标放在一个精灵中,所以我必须设置其他选项:

代码语言:javascript
复制
$("#gmap_" + parent).gmap('addMarker', { 
    "id": "marker-"+m.id,
    'position': new google.maps.LatLng(m.lat, m.lon), 
    'bounds':true,
    'icon': new google.maps.MarkerImage( {
        'url' : "http://crm.brunet.pro/images/markers.png",
        'origin': new google.maps.Point(m.pos, 0),
        'size' : new google.maps.Size(20, 34)
    })
})

我得到了这个错误:

代码语言:javascript
复制
GET http://mysite.com/[object%20Object] 400 (Bad Request)

因此,图标选项看起来只接受一个字符串。但是您可以在api中看到它应该接受一个MarkerImage对象。

我做错了什么?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-06-04 23:48:58

MarkerImage是使用最多五个参数创建的,比如MarkerImage(myUrl, size1, point1, point2),但您已经将其编写为一个对象参数。

我确实认为API文档在这样的情况下可能会令人困惑。看看这些例子:

https://developers.google.com/maps/documentation/javascript/overlays#ComplexIcons

代码语言:javascript
复制
  var image = new google.maps.MarkerImage('images/beachflag.png',
  // This marker is 20 pixels wide by 32 pixels tall.
  new google.maps.Size(20, 32),
  // The origin for this image is 0,0.
  new google.maps.Point(0,0),
  // The anchor for this image is the base of the flagpole at 0,32.
  new google.maps.Point(0, 32));

http://blog.mridey.com/2010/03/using-markerimage-in-maps-javascript.html (解释从精灵工作表加载)

没有提到size, origin, anchor,但是您需要尊重API文档中给出的顺序。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10884030

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档