【发布时间】:2018-02-01 12:12:58
【问题描述】:
所以我使用 .json 文件为我的谷歌地图脚本提供标记信息。由于某种原因,它不会渲染地图标记。
地图将呈现,我可以按照谷歌记录的方式放置一个标记,但是当我尝试将我的 JSON 数据转换为呈现标记时,它什么也不做。也没有控制台错误。
您会注意到控制台日志,因为我一直在尝试解决这个问题,我最终得到:
[0] Event Location: [object Object]
我没有为此正确创建对象吗?
jQuery(document).ready(function ($) {
$.getJSON('../wp-content/plugins/loopden/json/map.json', function (eventsData) {
// Grabbing our JSON file to mark the map.
Object.size = function(obj) {
var size = 0, key;
for (key in obj) {
if (obj.hasOwnProperty(key)) size++;
}
return size;
};
// Get the size of an object
var eventsSize = Object.size(eventsData);
console.log(eventsSize);
console.log(eventsData[0].lat);
for (var i = 0, l=eventsSize; i <l; i++){
var lat = eventsData[i].lat;
var lng = eventsData[i].lng;
var latlng = {"lat":parseInt(lat) , "lng":parseInt(lng)};
console.log('['+i+'] Event Location: '+latlng);
var marker = new google.maps.Marker({
position: latlng,
map: map,
title: eventsData[i].title
});
}
});
});
这是我正在使用的 JSON 数据:
{
"0": {
"lat": "-93.2745179",
"lng": "44.9817854",
"title": "Super Cool Event",
"date": "2017-08-25",
"time": "8:00pm - 10:00am",
"cost": "$15",
"bio": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec consectetur, leo ac gravida vestibulum, nisi metus posuere nibh, malesuada faucibus erat eros nec metus. Morbi tincidunt iaculis eros quis fringilla.",
"featured": "off"
}
}
【问题讨论】:
标签: javascript json google-maps google-maps-api-3