创建多个data- *值的数组

时间:2017-09-20 13:58:12

标签: javascript jquery html google-maps google-maps-api-3

我有多个带有data- *属性的HTML元素。我有一个namelatitude和一个longitude属性。这些属性从CMS获取其值。

<span class="js-coordinates" data-name="{{ez_field_value(content, 'name')}}"
data-latitude="{{content.fields.address['ger-DE'].latitude}}"
data-longitude="{{content.fields.address['ger-DE'].longitude}}"></span>

现在我想将每个元素的数据值加载到这样的数组中:

 var locations = [
     [name, longitude, latitude],
     [name, longitude, latitude],
     ...
 ];

我只从一个元素中获取namelongitudelatitude值。
在此之后,我可以使用数组值在谷歌地图上创建标记。

1 个答案:

答案 0 :(得分:1)

只需将此函数添加到文档的ready事件(JQuery)或window的onload事件中,即可生成标记:

function(){

    var tags= document.getElementsByClassName("js-coordinates");
    var locations = Array.from( tags ).map( x => {
         return [ x.dataset.name, x.dataset.latitude, x.dataset.longitude ];
    });


}