1

当用户点击我地图上的标记时,我希望它有自己的 URL。

例如,如果用户单击标记 A,则 url 将更改为http://example.com/m/132。理想情况下,它将链接到 SQL 表中的标记 ID。

这个想法是每个标记,因此信息部分,可以共享。因此,用户可以分享他为标记 A 写的评论(每个标记都有一个评论系统)。如果他们共享它,则 URL 将是http://example.com/m/132/review#1例如。

我做了相当多的研究,但没有提出任何解决方案。

谁能指出我正确的方向?

谢谢 :)

4

1 回答 1

0

我只是将标记单击事件附加到您的每个标记。

google.maps.event.addListener(marker, 'click', function() {
                alert('trigger url associated with marker');
            });

通常,如果您在地图中有很多功能,您可以将标记本身存储在数组中,以便您可以参考它们。我当然会这样做,但除此之外,我还会有另一个数组直接与存储您的 url 的标记相关联。然后,您可以使用 jquery 触发单击隐藏的 html 链接,然后再触发您使用存储在标记 url 数组中的 url 填充该链接。如果您需要更多信息,请告诉我,因为没有代码可看,这有点困难,但我非常确定我提出的方法会奏效。

***这里更新是我会怎么做。:

html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>
 <script>
  function marker_onClick() {
   $('#myMarkerUrl').click();
  }
</script>
</head>
<body>
 <a id='myMarkerUrl' href='http://www.google.com' onClick="a_onClick()"> aaa </a>
</body>
</html> 
</body>
</html>

然后在 google maps addevent listener 代码部分的 url 中覆盖。

google.maps.event.addListener(marker, 'click', function() {
var myMarkersURL = myMarkersURLArray[i];
$("#myMarkerUrl").attr("href", myMarkersURL);                    
$('#myMarkerUrl').click();
                });

既然你已经有了上面的内容,请记住我没有测试过这个,但通常我会在你的鞋子里做。

于 2012-10-06T05:31:39.803 回答