ÃÑ ÆäÀÌÁö ¼ö : 3224
![]()
|
Facebook Joinc ±×·ì
Joinc QA »çÀÌÆ®
![]()
Tweet
joinc´Â Firefox¿Í chrome¿¡¼ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù. 1 ÃÖ±Ù º¯°æ ¼Ò½Ä1.1 2009/3/30
1.2 2009/3/17
2 ±¸±ÛÀÇ °³¹ßÀÚ Æ÷¿ë Á¤Ã¥±¸±ÛÀº ´Ù¾çÇÑ °³¹ßÀÚ¸¦ ÀÚ½ÅÀÇ ¿µ¿ªÀ¸·Î ²ø¾îµéÀ̱â À§ÇÑ °³¹æÁ¤Ã¥À» »ç¿ëÇÑ´Ù. ±×·¡¼ ´ëºÎºÐÀÇ ¼ºñ½ºµéÀÌ ¼ºñ½º¸¦ Á¦¾îÇÒ ¼ö ÀÖ´Â API¸¦ °ø°³ÀûÀ¸·Î Á¦°øÇϰí ÀÖ´Ù. °³¹ßÀÚ´Â ÀÌ API¸¦ ÀÌ¿ëÇØ¼ ±¸±ÛÀÌ ¼±º¸ÀÎ ¼ºñ½º¸¦ ´Ü¼øÈ÷ µÑ·¯º¸´Â Á¤µµ¿¡ ±×Ä¡Áö ¾Ê°í, ´Ù¾çÇÑ ÀÀ¿ëÀ» ½ÃµµÇغ¼ ¼ö ÀÖ´Ù. ±¸±Û MAP°°Àº °æ¿ì ±¸±Û¿¡¼ ¼ºñ½º¸¦ ¸¸µé¾î³»±âµµ Àü¿¡, ±¸±ÛÀÌ Á¦°øÇÑ API¸¦ ÀÌ¿ëÇØ¼ Àڽŵ鸸ÀÇ µ¶Æ¯ÇÑ ¼ºñ½º¸¦ ¸¸µé¾î³½ »ç¿ëÀÚµéÀÌ ÀÖ´Ù. http://HousingMaps.com ÀÇ °æ¿ì ¹Ì±¹ ÁÖ¿äµµ½ÃÀÇ Áý°ª Á¤º¸¸¦ º¸¿©ÁÖ¸ç, http://ChicagoCrime.org ´Â µµ½Ã³»ÀÇ ¹üÁË¿Í ¹üÇàÀ§Ä¡¸¦ °Ë»öÇÏ´Â ¼ºñ½º¸¦ Á¦°øÇϰí ÀÖ´Ù.
ÀÚ½ÅÀÇ Á¦Ç°À» »ç¿ëÇϰųª Å×½ºÆ®ÇØÁÙ ¸¹Àº °³¹ßÀÚµéÀ» È®º¸ÇÏ´Â°Ç ¼ÒÇÁÆ®¿þ¾î ȸ»ç°¡ ¼ºÀåÇϱâ À§ÇÑ °¡Àå Áß¿äÇÑ µ¿·Â¿øÀÓÀº ¸»ÇÒÇʿ䵵 ¾øÀ» °ÍÀÌ´Ù. ±âÁ¸¿¡µµ °³¹ßÀÚ¸¦ ÀÚ½ÅÀÇ ¿µ¿ªÀ¸·Î ²ø¾îµéÀ̱â À§ÇÑ ³ë·ÂÀ» ÇØ¿Ô´ø°Ç »ç½ÇÀÌÁö¸¸, ¸¹Àº Á¦ÇÑÀ» µÐ Æó¼âÀûÀÎ ÇüÅ·ΠÀÌ·ç¾îÁ³¾ú´Ù. ±¸±ÛÀº Á¤º¸¸¦ ¿ÏÀüÈ÷ °ø°³Çϰí ÀÖÀ¸¸ç, ¸¹Àº ¿ìÈ£ÀûÀÎ °³¹ßÀÚ ¼¼·ÂÀ» ¸¸µé¾î³Â´Ù. ÀÌµé °³¹ßÀÚ´Â ±¸±Û¸Å´Ï¾Æ·Î ºÒ¸®¿ì´Â Áß¿ä °í°´À̱⵵ ÇÏ´Ù. ÃÖ±Ù¿¡´Â ±¹³» ´ëÇüÆ÷Å»µéµµ ÀÌ·¯ÇÑ °ø°³ °³¹ßÀÚ Æ÷¿ëÁ¤Ã¥À» Æì³ª°¡´Â Ãß¼¼´Ù. 3 ±¸±Û Map API
±¸±Û MapÀº Ajax±â¼úÀ» »ç¿ëÇÏ´Â ±¸±ÛÀÇ ´ëÇ¥ÀûÀÎ ¼ºñ½ºµé Áß ÇϳªÀÌ´Ù. ±¸±ÛÀº ´Ü¼øÈ÷ ¼ºñ½º¸¦ Á¦°øÇϴµ¥ ±×Ä¡Áö ¾Ê°í °³¹ßÀÚÀÇ Âü¿©¸¦ ²ø¾îµéÀ̱â À§ÇØ API¸¦ °ø°³Çϰí ÀÖ´Ù. ±¸±Û Map API¸¦ ÀÌ¿ëÇϸé ÀÚ½ÅÀÇ »çÀÌÆ®¿¡ ±¸±Û MapÀ» ºÙÀ̰í, Å×½ºÆ®ÇÏ¸é¼ »õ·Î¿î ÀÀ¿ëÀ» ¸¸µé ¼ö ÀÖ´Ù. Map API¸¦ »ç¿ëÇϱâ À§Çؼ´Â Map Key¸¦ ¹Þ¾Æ¾ß Çϴµ¥, http://www.google.com/apis/maps ¸¦ ¹æ¹®Çؼ MapÀ» »ç¿ëÇÒ URL¸¸ ¸í½ÃÇØÁÖ¸é ¹Ù·Î Key¸¦ ¹ÞÀ» ¼ö ÀÖ´Ù. ±×´ÙÀ½ »ý¼ºµÈ Äڵ带 °¡Á®´Ù ºÙÀ̱⸸ Çϸé ÀÚ½ÅÀÇ »çÀÌÆ®¿¡¼ ¹Ù·Î ±¸±Û MapÀ» ºÙÀÏ ¼ö ÀÖ´Ù. ![]()
Map Key´Â ±¸±Û maps ÀÚ¹Ù½ºÅ©¸³Æ®¸¦ ºÒ·¯¿Ã¶§ key¿¡ ¸í½ÃÇÏ¸é µÈ´Ù. <script src="http://maps.google.co.kr/maps?file=api&v=2&key=abcdefg" type="text/javascript"></script> 4 ±¸±Û MAP API ºÐ¼®
±¸±Û MAP API´Â JavaScript·Î Á¦¾îµÈ´Ù. ¿©±â¿¡¼´Â ¿ÏÀüÇÑ ÇüÅÂÀÇ HTML ÆÄÀÏÀ» º¸¿©ÁÖÁö´Â ¾ÊÀ» °ÍÀÌ´Ù. ¿ÏÀüÇÑ HTML ÆäÀÌÁö¸¦ ¸¸µå´Â°Ç Map Key¸¦ »ý¼ºÇÒ ¶§ ¸¸µé¾îÁö´Â HTML Äڵ带 ÀÌÇØÇÏ´Â °Í¸¸À¸·Î ÃæºÐÇÒ °ÍÀÌ´Ù. 4.1 ±âº»
±¸±Û MapÀ» ºÒ·¯¿À±â À§ÇÑ °¡Àå ±âº»ÀÌ µÇ´ÂÄÚµå´Ù. ¼¿ïÁÖº¯À» º¸¿©ÁØ´Ù. var map = new GMap2(document.getElementById("map"));
map.setCenter(new GLatLng(36.615527631349245, 127.353515625), 4);
setCenterÀ» ÀÌ¿ëÇØ¼ º¸¿©ÁÙ À§Ä¡¸¦ ÁöÁ¤ÇÑ´Ù. ù¹øÂ° ÀÎÀÚ´Â ÁÂÇ¥¸¦ ÁöÁ¤Çϱâ À§Çؼ »ç¿ëÇÑ´Ù. µÎ¹øÂ° ÀÎÀÚ´Â ÁöµµÀÇ ÇØ»óµµ¸¦ °áÁ¤Çϱâ À§Çؼ »ç¿ëÇÑ´Ù. ¼ýÀÚ°¡ Ŭ ¼ö·Ï ´õ ÀÚ¼¼ÇÑ °á°ú¸¦ º¸¿©ÁØ´Ù. simple.html ¿¹Á¦
±¸±Û ¸ÊÀº ¸Ê, À§¼º, ÇÕ¼ºÀÇ 3°¡Áö ¸ðµå¸¦ Á¦°øµÈ´Ù. setMapType¸Þ¼µå¸¦ ÀÌ¿ëÇÏ¸é ¸ðµå¸¦ º¯°æÇÒ ¼ö ÀÖ´Ù. µû·Î ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì ¸Ê¸ðµå·Î ½ÇÇàµÈ´Ù.
4.2 Map¿¡¼ÀÇ À̵¿
´ÙÀ½Àº ¸Ê¿¡¼ Áß½ÉÀ» À̵¿ÇÏ´Â ¿¹Á¦´Ù. panTo ¸Þ¼µå¸¦ ÀÌ¿ëÇϸé ÇØ´ç Áß½ÉÀ¸·Î Áöµµ¸¦ ºÎµå·´°Ô À̵¿½ÃŲ´Ù. ±æÃ£±âµîÀÇ ±â´É±¸Çö¿¡ À¯¿ëÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖÀ» °Å °°´Ù. var map = new GMap2(document.getElementById("map"));
map.setCenter(new GLatLng(36.615527631349245, 127.353515625), 4);
window.setTimeout(function() {
map.panTo(new GLatLng(42.615527631349245, 128.353515625));
}, 2000);
animate.html ¿¹Á¦4.3 Control ¹öư Ãß°¡Çϱâ
¸ÊÀ» È®´ë±â½ÃÄ¿³ª ¸ðµå¸¦ ¹Ù²Ù°Å³ª ÇϴµîÀÇ Á¦¾î¸¦ À§ÇÑ ÄÁÆ®·Ñ ¹öưÀ» Ãß°¡ÇÑ´Ù. var map = new GMap2(document.getElementById("map"));
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(36.615527631349245, 127.353515625), 4);
control.html ¿¹Á¦4.4 Event Listener
event listener´Â GEvent.addListener¸¦ È£ÃâÇØ¼ »ý¼ºÇÑ´Ù. À̰ÍÀº ¸Ê¿¡¼ ¹ß»ýÇÏ´Â À̺¥Æ®¸¦ ¾Ë·ÁÁØ´Ù. ¾Æ·¡ÀÇ ¿¹Á¦¿¡¼ ¸ÊÀ» ¿òÁ÷ÀÏ °æ¿ì º¯°æµÈ ÁÂÇ¥°¡ Ãâ·ÂµÇ´Â°É È®ÀÎÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. var map = new GMap2(document.getElementById("map"));
GEvent.addListener(map, "moveend", function() {
var center = map.getCenter();
document.getElementById("message").innerHTML = center.toString();
});
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(36.615527631349245, 127.353515625), 4);
event.html ¿¹Á¦4.5 Á¤º¸Ã¢ ¿±â
openInfoWindow¸¦ ÀÌ¿ëÇÏ¸é ¿øÇÏ´Â Áö¿ª¿¡ DOMÁ¤º¸¸¦ Ãâ·ÂÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½Àº ¸ÊÁß¾Ó¿¡ Àú´Â ¿©±â¿¡ »ì¾Æ¿ä¸Þ½ÃÁö¸¦ Ãâ·ÂÇÏ´Â ÄÚµå´Ù. map.setCenter(new GLatLng(36.615527631349245, 127.353515625), 4); map.openInfoWindow(map.getCenter(), document.createTextNode("Àú´Â ¿©±â¿¡ »ì¾Æ¿ä")); infowindow.html ¿¹Á¦4.6 ¸Ê¿¡ Ç¥½ÃÇϱâ
À̹ø ¿¹Á¦´Â overlay±â´ÉÀ» ÀÌ¿ëÇØ¼ Áöµµ¿¡ ·£´ýÇÏ°Ô 10°³ÀÇ ¸¶Å©¸¦ Ç¥½ÃÇÑ´Ù. ¸¶Å©¿¡ »ç¿ëµÇ´Â À̹ÌÁö´Â ±âº» À̹ÌÁöÀ̸ç, »ç¿ëÀÚ Á¤ÀÇ ¾ÆÀÌÄÜÀ» ¸¸µé ¼öµµ ÀÖ´Ù. ¼¿ï½Ã¸¦ ±âÁØÀ¸·Î ÀÛ¼ºÇß´Ù. map.setCenter(new GLatLng(35.76873101871279, 139.5413875579834), 12); var bounds = map.getBounds(); var southWest = bounds.getSouthWest(); var northEast = bounds.getNorthEast(); var lngSpan = northEast.lng() - southWest.lng(); var latSpan = northEast.lat() - southWest.lat(); // ·£´ý Æ÷ÀÎÆ®¸¦ ¸¸µé°í °¢°¢ÀÇ Æ÷ÀÎÆ®¿¡ ¸¶Å·À» ÇÑ´Ù. for (var i = 0; i < 10; i++) { var point = new GLatLng(southWest.lat() + latSpan * Math.random(), southWest.lng() + lngSpan * Math.random()); map.addOverlay(new GMarker(point)); } // ·£´ý Æ÷ÀÎÆ®¸¦ ¸¸µé°í À̰ÍÀ» ¿¬°áÇÑ´Ù. var points = []; for (var i = 0; i < 5; i++) { points.push(new GLatLng(southWest.lat() + latSpan * Math.random(), southWest.lng() + lngSpan * Math.random())); } points.sort(function(p1, p2) { return p1.lng() - p2.lng(); }); map.addOverlay(new GPolyline(points)); overlay.html ¿¹Á¦4.7 Ŭ¸¯ À̺¥Æ® Á¦¾î
¸Ê¿¡ Ŭ¸¯À» ÇÒ°æ¿ì À̺¥Æ®¸¦ ¹Þ¾Æ¼ ¸¶Å·À» ÇÏ´Â ¿¹Á¦´Ù. ¾Õ¼ ¹è¿ü´ø addListenr¸Þ¼µå¸¦ ÀÌ¿ëÇØ¼ click À̺¥Æ®¸¦ ±â´Ù¸®°í, Ŭ¸¯ÀÌ ¹ß»ýÇϸé addOverlay¸Þ¼µå¸¦ ÀÌ¿ëÇØ¼ ¸¶Å·À» ÇÑ´Ù. map.addControl(new GSmallMapControl()); map.addControl(new GMapTypeControl()); map.setCenter(new GLatLng(35.76873101871279, 139.5413875579834), 12); GEvent.addListener(map, "click", function(marker, point) { if (marker) { map.removeOverlay(marker); } else { map.addOverlay(new GMarker(point)); } }); click.html ¿¹Á¦4.8 ¸¶Ä¿¿¡ Á¤º¸ â Ãâ·ÂÇϱâ
10°³ÀÇ ¸¶Ä¿¸¦ ·£´ýÇÏ°Ô Ç¥½ÃÇϰí, ¸¶Ä¿¸¦ Ŭ¸¯Çϸé Ŭ¸¯À̺¥Æ®¿¡ ´ëÇÑ Listener°¡ ÀÛµ¿Çϵµ·Ï ÇØº¸ÀÚ. Listener ÇÔ¼ö´Â openInfoWindowHtml¸Þ¼µå¸¦ ÀÌ¿ëÇØ¼ Á¤º¸Ã¢À» Ãâ·ÂÇÑ´Ù. var map = new GMap2(document.getElementById("map"));
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(35.76873101871279, 139.5413875579834), 12);
function createMarker(point, number)
{
var marker = new GMarker(point);
GEvent.addListener(marker, "click", function()
{
marker.openInfoWindowHtml("Marker #<b>" + number + "</b>");
});
return marker;
}
var bounds = map.getBounds();
var southWest = bounds.getSouthWest();
var northEast = bounds.getNorthEast();
var lngSpan = northEast.lng() - southWest.lng();
var latSpan = northEast.lat() - southWest.lat();
for (var i = 0; i < 10; i++)
{
var point = new GLatLng(southWest.lat() + latSpan * Math.random(),
southWest.lng() + lngSpan * Math.random());
map.addOverlay(createMarker(point, i + 1));
}
markerinfo.html ¿¹Á¦4.9 ÅÇ »ç¿ëÇϱâ
openInfoWindowsTabs¸Þ¼µå ¿Í GInfoWindowTab Ŭ·¡½º¸¦ ÀÌ¿ëÇϸé, ÅÇÀ» Á¦¾îÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½ ¿¹Á¦´Â ¸¶Ä¿¸¦ Ŭ¸¯Çϸé 2°³ÀÇ tabÀ» °¡Áø Info Windows¸¦ ¶ç¿î´Ù. var map = new GMap2(document.getElementById("map"));
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(35.76873101871279, 139.5413875579834), 12);
var infoTabs = [
new GInfoWindowTab("ÅÇ1", "¾È³çÇϼ¼¿ä.<br><img src=http://www.joinc.co.kr/images/joinc.png border=0>"),
new GInfoWindowTab("ÅÇ2", "¹Ý°©½À´Ï´Ù."),
];
var marker = new GMarker(map.getCenter());
GEvent.addListener(marker, "click", function() {
marker.openInfoWindowTabsHtml(infoTabs);
});
map.addOverlay(marker);
marker.openInfoWindowTabsHtml(infoTabs);
tab.html ¿¹Á¦4.10 »ç¿ëÀÚ Á¤ÀÇ ¾ÆÀÌÄÜ »ç¿ëÇϱâ
»ç¿ëÀÚ Á¤ÀÇ ¾ÆÀÌÄÜÀ» »ç¿ëÇÏ´Â ¿¹Á¦´Ù. ¾ÆÀÌÄÜÀº ±¸±Û¿¡¼ Á¦°øÇÏ´Â mini markerÀ̹ÌÁöµéÀ» »ç¿ëÇϱâ·Î Çß´Ù. ¿ÏÀüÇÑ »ç¿ëÀÚ Á¤ÀÇ ¾ÆÀÌÄÜÀ» ¸¸µé±â À§Çؼ´Â ¿øº»À̹ÌÁö¿Í ÇÔ²² ±×¸²ÀÚ À̹ÌÁö°¡ ½ÖÀ¸·Î ÁغñµÇ¾î¾ß ÇÑ´Ù. var map = new GMap2(document.getElementById("map"));
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(35.76873101871279, 139.5413875579834), 12);
var icon = new GIcon();
icon.image = "http://labs.google.com/ridefinder/images/mm_20_red.png";
icon.shadow = "http://labs.google.com/ridefinder/images/mm_20_shadow.png";
icon.iconSize = new GSize(12, 20);
icon.shadowSize = new GSize(22, 20);
icon.iconAnchor = new GPoint(6, 20);
icon.infoWindowAnchor = new GPoint(5, 1);
// 10°³ÀÇ ·£´ýÀ§Ä¡¸¦ ã¾Æ¼ markingÇÑ´Ù.
var bounds = map.getBounds();
var southWest = bounds.getSouthWest();
var northEast = bounds.getNorthEast();
var lngSpan = northEast.lng() - southWest.lng();
var latSpan = northEast.lat() - southWest.lat();
for (var i = 0; i < 10; i++) {
var point = new GLatLng(southWest.lat() + latSpan * Math.random(),
southWest.lng() + lngSpan * Math.random());
map.addOverlay(new GMarker(point, icon));
}
icon.html ¿¹Á¦4.11 ¾ÆÀÌÄÜ Å¬·¡½º »ç¿ëÇϱâ
Áöµµ¼ºñ½º¸¦ ÇÏ°Ô µÈ´Ù¸é, ¿©·¯°³ÀÇ ¾ÆÀÌÄܵéÀÌ »ç¿ëµÉ °ÍÀÌ´Ù. GIconŬ·¡½º¸¦ ÀÌ¿ëÇÏ¸é ¾ÆÀÌÄÜÀ» ½±°Ô °ü¸®ÇÒ ¼ö ÀÖ´Ù. var map = new GMap2(document.getElementById("map"));
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(37.4419, -122.1419), 13);
// ¾ÆÀÌÄÜ¿¡¼ »ç¿ëÇÒ À̹ÌÁö/±×¸²ÀÚ À̹ÌÁö, Info Windowsµî °´Ã¼ÀÇ
// ¼Ó¼ºÀ» °áÁ¤ÇÑ´Ù.
var baseIcon = new GIcon();
baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
baseIcon.iconSize = new GSize(20, 34);
baseIcon.shadowSize = new GSize(37, 34);
baseIcon.iconAnchor = new GPoint(9, 34);
baseIcon.infoWindowAnchor = new GPoint(9, 2);
baseIcon.infoShadowAnchor = new GPoint(18, 25);
function createMarker(point, index) {
// Create a lettered icon for this point using our icon class
var letter = String.fromCharCode("A".charCodeAt(0) + index);
var icon = new GIcon(baseIcon);
icon.image = "http://www.google.com/mapfiles/marker" + letter + ".png";
var marker = new GMarker(point, icon);
GEvent.addListener(marker, "click", function() {
marker.openInfoWindowHtml("Áö¿ª <b>" + letter + "</b>");
});
return marker;
}
var bounds = map.getBounds();
var southWest = bounds.getSouthWest();
var northEast = bounds.getNorthEast();
var lngSpan = northEast.lng() - southWest.lng();
var latSpan = northEast.lat() - southWest.lat();
for (var i = 0; i < 10; i++) {
var point = new GLatLng(southWest.lat() + latSpan * Math.random(),
southWest.lng() + lngSpan * Math.random());
map.addOverlay(createMarker(point, i));
}
iconclass.html ¿¹Á¦4.12 ¸¶Ä¿ µå·¡±×
¸¶Ä¿´Â Ŭ¸¯, ´Ù¸¥Àå¼Ò·ÎÀÇ µå·¡±× µîÀÌ °¡´ÉÇÑ »óÈ£ÀÛ¿ëÇÏ´Â °´Ã¼´Ù. ÀÌ ¿¹Á¦´Â ¸Ê¿¡¼ ¸¶Ä¿¸¦ Ŭ¸¯ÇÏ°í µå·¡±×ÇÏ´Â À̺¥Æ®¸¦ ó¸®ÇÏ´Â ¹æ¹ýÀ» ¾Ë·ÁÁØ´Ù. µå·¡±×´Â click, dragstart, drag, dragendÀÇ 4°¡Áö ŸÀÔÀÇ À̺¥Æ®¸¦ ¹ß»ýÇÑ´Ù. var map = new GMap2(document.getElementById("map"));
var center = new GLatLng(37.51025350131836, 127.06023216247559);
map.setCenter(center, 16);
map.setMapType(G_SATELLITE_MAP);
var marker = new GMarker(center, {draggable: true});
GEvent.addListener(marker, "dragstart", function() {
map.closeInfoWindow();
});
GEvent.addListener(marker, "dragend", function() {
map.openInfoWindowHtml("¿©±â¸¦ ¾à¼ÓÀå¼Ò·Î...");
});
map.addOverlay(marker);
}
drag.html ¿¹Á¦4.13 SideBar¸¦ ÅëÇÑ ¸Ê ¸µÅ© google map¿¡¼ °Ë»öÀ» ÇØº¸¸é Áöµµ ¿·¿¡ SideBar¸¦ ÅëÇØ¼ ¸ÊÀ» Á¦¾îÇÏ´Â °É º¼¼ö ÀÖ´Ù. ¿©±â¿¡¼´Â SideBar¸¦ ÀÌ¿ëÇØ¼ mapÀ» Á¦¾îÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ¼ ¾Ë¾Æº¸°Ú´Ù.
¿ì¼± ¼ÀÇÃÀ» Å×½ºÆ®Çغ¸µµ·Ï ÇÑ´Ù. sidebar.html ¿¹Á¦<script language="JavaScript" type="text/javascript">
// ÀÌ º¯¼ö¿¡ side bar¿¡ À̺¥Æ®°¡ ¹ß»ýÇßÀ» ¶§ Ãâ·ÂÇÒ HTMLÄڵ尡 ÀúÀåµÈ´Ù.
var side_bar_html = "";
// side bar¿¡´Â ¿©·¯°³ÀÇ ¸¶Ä¿¿¡ ´ëÇÑ HTML¿ä¼Ò°¡ »ç¿ëµÇ¹Ç·Î
// ¹è¿·Î Á¤ÀÇ ÇÑ´Ù.
var gmarkers = [];
var htmls = [];
var i = 0;
// markerÀ» ¸¸µç´Ù.
// ù¹øÂ° ÀÎÀÚ´Â À§Ä¡, µÎ¹øÂ° ÀÎÀÚ´Â À̸§, ¼¼¹øÂ° ÀÎÀÚ´Â ¼³¸íÀÌ´Ù.
function createMarker(point, name, html)
{
var marker = new GMarker(point);
// click À̺¥Æ®¿¡ ´ëÇÑ listener ÇÔ¼ö Á¤ÀÇ
GEvent.addListener(marker, "click", function()
{
marker.openInfoWindowHtml(html);
});
gmarkers[i] = marker;
htmls[i] = html;
side_bar_html += '<a href="javascript:myclick(' + i + ')">' + name + '</a><br>';
i++;
return marker;
}
function myclick(i)
{
gmarkers[i].openInfoWindowHtml(htmls[i]);
}
var map = new GMap2(document.getElementById("map"));
// GSmallMapControl´ë½Å¿¡ GLargeMapControlÀ» »ç¿ëÇß´Ù.
map.addControl(new GLargeMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(37.51030456483467, 127.05190658569336),14);
map.setMapType(G_SATELLITE_MAP);
// Å×½ºÆ®¿¡ »ç¿ëÇÒ marker¸¦ ¸¸µç´Ù.
var point = new GLatLng(37.508500299402435, 127.06263542175293);
var marker = createMarker(point, "¹Ýµð¿£ ·çÀνº", "Á¦°¡ ¾Ö¿ëÇÏ´Â ¼Á¡ ÀÔ´Ï´Ù");
map.addOverlay(marker);
var point = new GLatLng(37.50209991181568, 127.03652143478394);
var marker = createMarker(point, "½ÃƼ¹®°í", "°¡²û °³²¿¡ °¥ÀÏÀÌ ÀÖÀ¸¸é ½Ã°£À» ¶§¿ì´Â Àå¼Ò·Î..");
map.addOverlay(marker);
var point = new GLatLng(37.517802011991854, 127.0405125617981);
var marker = createMarker(point, "·ÎÅ͸® ¿À¶ô½Ç", "µå·³¸Þ´Ï¾Æ V2¶§¹®¿¡ °©´Ï´Ù");
map.addOverlay(marker);
var point = new GLatLng(37.5056235973398, 127.0512306690216);
var marker = createMarker(point, "onnet", "Á¦°¡ ´Ù´Ï´Â ȸ»çÁö¿ä");
map.addOverlay(marker);
// <div> side_bar¿¡ side_bar_html ¹®¼¸¦ ¹èÄ¡ÇÑ´Ù.
document.getElementById("side_bar").innerHTML = side_bar_html;
</script>
5 XML°ú ºñµ¿±â HTTP¸¦ ÀÌ¿ëÇÑ Áöµµ »ý¼º
À̹ø ¿¹Á¦´Â °æµµ/À§µµ¿Í Áö¿ªÁ¤º¸¸¦ Æ÷ÇÔÇÑ data.xmlÀ» ´Ù¿î·Îµå ¹Þ¾Æ¼, Áöµµ¿¡ ¸¶Ä¿¸¦ Ç¥½ÃÇÑ´Ù. GDownloadUrl¸Þ¼µå¸¦ ÀÌ¿ëÇØ¼ ÆÄÀÏÀ» ´Ù¿î·Îµå ¹ÞÀ» ¼ö ÀÖ´Ù. ´Ù¿î·Îµå ¹ÞÀº XMLÆÄÀÏÀº GXml¸Þ¼µå¸¦ ÀÌ¿ëÇØ¼ ó¸®ÇÑ´Ù. ¸¶Ä¿¸¦ Ŭ¸¯Çϸé Áö¿ªÁ¤º¸°¡ Ç¥½ÃµÈ´Ù. <script language="JavaScript" type="text/javascript"> var side_bar_html = ""; var gmarkers = []; var htmls = []; var i = 0; function myclick(i) { gmarkers[i].openInfoWindowHtml(htmls[i]); } function load() { var map = new GMap2(document.getElementById("map")); var center = new GLatLng(37.51030456483467, 127.05190658569336); map.addControl(new GSmallMapControl()); map.addControl(new GMapTypeControl()); map.setCenter(center, 14); function createMarker(point, name, html) { var marker = new GMarker(point); GEvent.addListener(marker, "click", function() { marker.openInfoWindowHtml("<b>" + name + "</b>"); }); gmarkers[i]=marker; htmls[i]=html; side_bar_html += '<a href="javascript:myclick(' + i + ')">' + name + '</a><br>'; i++; return marker; } GDownloadUrl("data.xml", function(data, responseCode) { var xml = GXml.parse(data); var markers = xml.documentElement.getElementsByTagName("marker"); for (var i = 0; i < markers.length; i++) { var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")), parseFloat(markers[i].getAttribute("lng"))); map.addOverlay(createMarker(point, markers[i].getAttribute("name"), markers[i].firstChild.nodeValue)); } document.getElementById("side_bar").innerHTML = side_bar_html; }); } </script> </head> <body onunload="GUnload()"> <div id="map" style="width: 600px; height: 340px"></div> <div id="side_bar"></div> <img src=../images/eyes.gif height=0 width=0 onload=javascript:load()> </body> </html>´ÙÀ½Àº data.xmlÀÇ ³»¿ëÀÌ´Ù. È¿À²¼º°ú´Â °Å¸®°¡ ¸Ö°Ô ¸¸µé¾îÁ³´Ù. <markers> <marker lat="37.508500299402435" lng="127.06263542175293" name="¹Ýµð¾Ø ·çÀνº"><![CDATA[<a href=http://www.joinc.co.kr>www.joinc.co.kr</a>]]></marker> <marker lat="37.50209991181568" lng="127.03652143478394" name="½ÃƼ¹®°í"><![CDATA[<a href=http://teamblog.co.kr>joinc teamblog</a>]]></marker> <marker lat="37.50312128705489" lng="127.05825805664062" name="°³¹ÌÃ¥¹æ"><![CDATA[<a href=http://bbs.joinc.co.kr>joinc bbs</a>]]></marker> <marker lat="37.517802011991854" lng="127.0405125617981" name="·ÎÅ͸®¿À¶ô½Ç"><![CDATA[<a href=http://bbs.joinc.co.kr>joinc bbs</a>]]></marker> <marker lat="37.5056235973398" lng="127.0512306690216" name="¿ïȸ»ç"><![CDATA[<a href=http://bbs.joinc.co.kr>joinc bbs</a>]]></marker> </markers> async.html ¿¹Á¦ 6 Google °Ë»ö¿£Áø ¿¬µ¿6.1 GoogleBar¸¦ ÀÌ¿ëÇÑ °Ë»ö¿£Áø Ȱ¿ë
GoogleBar¸¦ ÀÌ¿ëÇϸé, ±¸±Û¸Ê°Ë»ö°á°ú¿Í Áöµµ¸¦ ¿¬µ¿ÇÒ ¼ö ÀÖ´Ù. À̸¦ À§Çؼ´Â GGoogleBarOptions °´Ã¼¸¦ ¼³Á¤Çϰí GMap2»ý¼ºÀÚÀÇ ¿É¼ÇÀ¸·Î ³Ñ°ÜÁÖ¸é µÈ´Ù. ÀÌÁ¦ GMap2.enableGoogleBar()¸¦ ÀÌ¿ëÇÏ´Â °ÍÀ¸·Î GoogleBar¸¦ Ȱ¼ºÈ ÇÒ ¼ö ÀÖ´Ù. GoogleBarÀÇ È¸éÀº google mapÀÇ ¸ÞÀÎȸ鿡¼¿Í ºñ½ÁÇÑ ¸ð½À°ú ´À³¦À» º¸¿©ÁØ´Ù.
´ÙÀ½°ú °°ÀÌ °£´ÜÇÏ°Ô google Áöµµ °Ë»ö°ú ¿¬µ¿ÇÒ ¼ö ÀÖ´Ù. function initialize() { var map; if (GBrowserIsCompatible()) { var mapOptions = { googleBarOptions : { style : "new", } } map = new GMap2(document.getElementById("map_canvas"), mapOptions); map.setCenter(new GLatLng(37.51030456483467, 127.05190658569336), 13); map.setUIToDefault(); map.enableGoogleBar(); } } |
|
|
|
EmailÀ» ±âÀÔÇϸé, ´ñ±ÛÀÌ ¸ÞÀÏ·Î Àü´ÞµË´Ï´Ù. |
|