我陷入了自己的代码中。
我正在制作交互式地图,所以我需要在有问题的坐标上飞行。我怎么知道问题什么时候起作用,那么我已经检查了数据的状态,并根据对象的状态将它们放置在Leaflet的不同层中以在地图上显示它。然后,将它们放在页面上地图下方的小表中,其中包含具有唯一类,数据经度和数据纬度变量的元素,这些元素汇总了我们有多少个问题以及它们在哪里。
现在,这是我的问题所在。我是JS和JQuery的新手,所以我需要知道如何单击才能访问元素属性,因此当我单击它时,它将执行flyTo()函数,并将存储数据经度+数据纬度属性该功能。
这是一个带有一些ID的小代码。
这就是我在JS中创建元素的方式:
var newOption = host_name;
var uniqID = brojac;
div.innerHTML += '<td class="' + uniqID + '"value="' + newOption + '" data-longitude= "' + longitude + '" data-latitude="' + latitude + '">' + newOption + '</td>';
这是我在HTML文档中创建表格的方式:
<table id="tablic" style="width:100%">
<caption>Aktivni problemi su na sljedećim DSLAM-ovima</caption>
<tr id="red" itemprop='koordinate'></tr>
</table>
对不起,我不能在其中添加更多信息,因为它的敏感数据非常不错,希望你们能理解。
还有另一件事,即“ host_name”,我从JSON对象获取信息,在该对象中为地图创建标记。
希望我可以得到一些好的帮助。
答案 0 :(得分:0)
使用JQuery:
将修订类添加到td元素:
'<td class="tdclass ' + uniqID + '"value="' ....
然后在该类上创建一个点击侦听器:
$('.tdclass').off('click').unbind('click').click(function(e){ //unbind and off is to remove the existing click events
console.log(e);
console.log($(this).html());
console.log($(e).html());
var lat = $(this).attr('data-latitude');
var lng = $(this).attr('data-longitude');
map.flyTo([lat,lng]);
});