0

嘿伙计如何使用实时数据更新(动态)标记图标?

我在想,如果有可能创建一个可以尽快AJAX功能从服务器拉新的数据更新/修改标记的图标。举个例子:

我有几个标记代表不同的人。现在,如果其中一个人向系统发布了一条新消息,AJAX就提取它并传递给Map-Object。现在,我想通过在该人旁边打开一个InfoWindow将这个(事件)弹出到地图中,或者 - 这是首选方法 - 在标记图标旁边添加一个红色小图标,就像你从Facebook的顶级导航中了解它(例如,你有5条新消息和3条好友请求)。 如果点击图标/ InfoWindow打开,我想从中删除多余的图标。

是否有可能做到这一点?什么是最快(基准方面)的方式?也许有额外的覆盖?或者,我是否必须计算视口内的像素并添加到其中?

现在轮到你了... :)

非常感谢!

回答

0

简单的方法是使用标记类的setIcon()函数。

这是很有可能使用另一个覆盖,诀窍是计算视口内的像素。您可以通过使用透明度“红色图标”并使用自定义覆盖图类将其覆盖在现有图标的顶部(http://code.google.com/apis/maps/documentation/javascript/overlays.html#CustomOverlays )通过使用图标的位置。

如果你真的想计算像素,你可以搜索'谷歌地图contextmenu',并参考人们如何做计算。

+0

您认为在速度方面更合适些?我已经在使用自定义标记图标。为每一个标记创建更多图标似乎更加糟糕。我喜欢覆盖图的想法,但由于我会有相当多的标记,大量的平移和缩放地图,每次都需要重新计算。这一定很慢,呃?没有其他的东西吗?像超级快? – mind85 2012-02-24 16:36:51

+0

基本上我需要一些速度非常快,有很多标记,平移,缩放和传入消息的东西?任何人? – mind85 2012-02-24 16:43:55

+0

如果考虑平移和缩放,使用图标或自定义叠加并没有太大的区别。唯一的区别取决于你是否使用图标(图像)。根据浏览器和计算机的不同,数十种图标或小型覆盖图,或者甚至数百种图标现在可以变得相当快速。 – user1226919 2012-02-24 22:39:11