jQuery和动态ID

wee*_*zle 0 javascript jquery google-maps

我正在使用gmap3 jQuery插件渲染Google Maps标记.我正在触发标记弹出窗口,点击基于标记ID的菜单链接,我可以使用此插件设置.

Marker使用以下代码获取ID(在lat/long和popup文本旁边):

{latLng:[46.055221,14.504265], data:"some text", id:"map-1"}
Run Code Online (Sandbox Code Playgroud)

使用此jQuery代码触发标记弹出:

$('#maptrigger-1').live('click',function(){
    var marker = $('#googlemap').gmap3({ get: { id: 'map-1' } });
    google.maps.event.trigger(marker, 'click'); 
});
Run Code Online (Sandbox Code Playgroud)

这个HTML代码:

<a href="#" id="maptrigger-1">click</a>
Run Code Online (Sandbox Code Playgroud)

我不想为每个标记/ ID(map-1/maptrigger-1,map2/maptrigger2,map3/maptrigger3)重复jQuery代码,但到目前为止我还没有成功.

任何帮助,将不胜感激.

Gab*_*oli 5

您应该为可单击元素添加一个类

<a href="#" id="maptrigger-1" class="trigger">click</a>
Run Code Online (Sandbox Code Playgroud)

并使用

$('someParentOfAll.triggerElements').on('click','.trigger', function(){
    var mapid = 'map-' + this.id.split('-')[1],
        marker = $('#googlemap').gmap3({ get: { id: mapid } });

    google.maps.event.trigger(marker, 'click'); 
});
Run Code Online (Sandbox Code Playgroud)