2
我不确定在Google地图上避免重复标记的最佳方法。我目前的设置是通过用户的地图边界将网站发布到服务器。返回的匹配地图位置/坐标的标记,但我决定是否更好地检查客户端上的重复标记(通过JavaScript中的所有当前标记进行循环)还是只通过循环返回先前返回的标记从服务器返回唯一标记?或者,也许有更好的方式,而不是使用循环?防止重复Google地图标记
我不确定在Google地图上避免重复标记的最佳方法。我目前的设置是通过用户的地图边界将网站发布到服务器。返回的匹配地图位置/坐标的标记,但我决定是否更好地检查客户端上的重复标记(通过JavaScript中的所有当前标记进行循环)还是只通过循环返回先前返回的标记从服务器返回唯一标记?或者,也许有更好的方式,而不是使用循环?防止重复Google地图标记
您保留associative array并以某种方式散列密钥,以便两个相似的标记获得相同的散列,如id。
现在,在将标记放入地图之前,如果该关键字存在条目,则检查关联数组,如果没有做任何其他添加键并将其添加到地图中。
var markers=[];
function addMarkerToMap(markerId,prop1,prop2)
{
if(!markers[markerId])
{
markers[markerId]=true;
//code to marker to map
}
}
所以天才和简单。非常感谢! (也是避免深夜编程的另一个原因) – Yuriy 2012-03-25 07:20:00
由于您可以在那里执行相同的哈希逻辑,因此可能会通过减少带宽来提高性能。 – 2012-03-25 12:59:51
@EricBridger,不错,尽管如果你希望在请求之间使用无状态服务器,客户端会更有意义。 – 2015-08-04 14:15:07