我正在尝试从我的数据库中获取位置并在地图上显示它们。标记显示我需要它们的位置,但是当我将弹出窗口绑定到它们时,我收到错误Uncaught TypeError: Failed to execute 'appendChild' on 'Node': parameter 1 is not of type 'Node'.
这是我的JS:
var map = L.map('map').setView([42.351776, -71.061371], 14);
L.mapbox.accessToken = 'TOKEN';
L.tileLayer('https://{s}.tiles.mapbox.com//{z}/{x}/{y}.png?access_token=' + L.mapbox.accessToken, {
attribution: '<a href="http://www.mapbox.com/about/maps/" target="_blank">Terms & Feedback</a>'
}).addTo(map);
$.get( '/events.json', function( data ) {
for (i=0; i<data.length; i++) {
var coordinatesArray = [data[i].latitude, data[i].longitude];
`var marker = L.marker([coordinatesArray[0],coordinatesArray[1]]).addTo(map);`
marker.bindPopup("<h1>" + data.title + "</h1>");
}
});
如果我只使用弹出窗口加载一个标记,似乎可以工作,但是当我尝试迭代对象时,它开始给我错误。
答案 0 :(得分:0)
我认为您需要删除标记创建周围的反引号,并在访问title
时包含当前索引。因此,请使用data.title
而不是data[i].title
。