1

我在地图中有一组标记,它们被命名为 ev1、ev2、ev3 等。

当我单击一个链接时,我希望从地图中打开一个弹出窗口,它们会像这样被触发,

ev1.openPopup();

但是因为我不能编写每个标记的弹出代码,所以我得到了一个这样的 jquery 代码

$(document).on('click', '.venname', function () {
var myLinkId = $('.venname').attr('data-mylink'); 
    ev+myLinkId.openPopup();
});

单击链接后,它将获得一个名为 data-mylink 的 id 并将其与 ev 结合,例如,当我单击 lick one 时,它​​将具有一个名为 1 的属性,jquery 代码将获得 1 并生成 variavle ev1并将触发弹出窗口,但不知何故我无法让这个东西工作并得到一个错误 ev is not defined。

那么如何将 ev 与变量 myLinkID 结合起来呢?

4

1 回答 1

2

您可以使用原始对象或数组来存储标记对象:

var markers = {marker1: new Marker(...), marker2: new Marker(...), ... };

然后你可以像这样到达 Marker 对象:

markers['marker'+markerId].openPopup();

数组示例:

var markers = [new Marker(...), new Marker(...), ...];

markers[markerIndex].openPopup();
于 2013-09-26T08:12:17.440 回答