마커 데이터를 JSON을 통해 가져옵니다. 난 내 로컬 복사본을 개발할 때 나는 JS 파일에서이 있었고, 그냥 내가 지금 CMS (ExpressionEngine) 상에 사이트를 이동하고Google Maps API 3에서 작동하도록 JSON 가져 오기
<script src="assets/js/locations.js"></script>
를 사용하여 전화를 마커 데이터가 동적이기 때문에 나는 JS가 템플릿에 JSON 데이터가 저장됩니다.
내가 지금 로 파일을 포함 할 필요가
<script src="http://domain.com/map/locations"></script>
여기에 내가 가지고있는 JSON의 예입니다 (어떤 파일 확장자가없는 것을 알). 위치는되지 않습니다 :
var locations = [
[2, 51.39006, -0.02976, 'telecommunications', 'Test 2', '<div><img src="http://localhost/map/assets/graphics/info_window/default.jpg" alt="Test 2" width="105" height="70" style="float:right;"> <p>fdgj fdh uhfj bfd nibjdfjb ndfjn fd vfn vbjdc ifs n ei klmvf.cx fi fskn d</p></div>', '<a href="http://www.yahoo.com" target="_blank">Read more</a>' ],
[1, 51.51400, -0.12002, 'transport', 'Test map marker', '<div><img src="{image:url:thumb}" alt="Test map marker" width="{image:width:thumb}" height="{image:height:thumb}" style="float:right;"> <p>eubnglrsk nekfldb jndklvcbv jdnfhl kvbmd klbndvl kbjn dkbnm lkd nbmfljeb ygdjfjn</p></div>', '<a href="http://www.google.com" target="_blank">Read more</a>' ]
];
이
지도 분명히var markers = [];
// Looping through the JSON data
for (var i = 0; i < locations.length; i++) {
// Creating a marker and putting it on the map
var marker = new google.maps.Marker({
position: new google.maps.LatLng(locations[i][1], locations[i][2]),
map: map,
title: locations[i][4],
icon: iconSrc[locations[i][3]]
});
markers.push(marker);
google.maps.event.addListener(marker, 'click', (function(marker, i) {
return function() {
infoWindow.setContent("<div class='cont_box' id='" + locations[i][0] + "'>" + "<h2>" +locations[i][4] + "</h2>" + "<div class='cont'>" + locations[i][5] + "</div><div style='clear:both;'></div><div class='link'>" + locations[i][6] + "</div></div>");
infoWindow.open(map, marker);
}
})(marker, i));
}// END for loop
나는 CMS에 의해 렌더링 된 JSON 데이터를 참조 할 때 내가 오류에 대한 마커 루프
ReferenceError가이 ::입니다 정의
URL이 유효합니다. JS 파일을 사용할 때처럼 URL이 유효하지 않습니다.
지도 JS 코드 자체 내에서 파일을 호출하는 것이 더 나은지 잘 모르겠습니다. 나는이 작품이 큰
링크를 게시하십시오. 여기에 문제가 CMS와 훨씬 관련이있는 것으로 보입니다. Google지도가 CMS와 어떤 관련이 있는지 알지 못해서 대답 할 수 없습니다. –
@ Dr.Molle 나는 아마도 내가 실제 파일을 extenstion이라고 부르지 않을 것이라고 생각한다. 나는 이것이 CMS 나 Google지도와 관련이 없다고 생각합니다. JSON을 가져 오는 다른 방법을보고 싶은 이유는 – zizther
@Dr입니다.몰리 나는 내일 당신을 위해 예제를 얻을 것이다 – zizther