1var NAVERMAP = function(){ 2 var oMap; 3 var currentMarker = ""; 4 var cartMarker = ""; 5 var mapId = ""; 6 var isDrag = false; 7 var timer; 8 var dragBackTime = 600000; 9 var is_custom = true; 10 var mapOptions = {}; 11 var markerOption = {}; 12 13 var init = function(id, data){ 14 mapId = id; 15 setMap(data) 16 }; 17 var initGps = function(id, data){ 18 mapId = id; 19 setMapGps(data) 20 }; 21 22 function setMap(data){// 기본ì ì¸ ë§µ ì¸í 23 24 var mapSize = data[0].size; 25 var pointArray = []; 26 $.each(data, function(key, obj){ 27 pointArray.push(obj.point); 28 }); 29 30 if(typeof data[0].is_custom != 'undefined'){ 31 is_custom = data[0].is_custom; 32 } 33 mapOptions = { // ë§µ ì´ê¸°í ìµì ë¤ 34 center : pointArray[0],// ì´ê¸° ì§ëì ì¼í° ê° (ì§ì í ìì¹) 35 size : mapSize, 36 zoom : 14, 37 zoomControl : true,//ì¤ ì»¨í¸ë¡¤ë¬ (ë²í¼) 38 zoomControlOptions : { 39 style : naver.maps.ZoomControlStyle.SMALL, //LARGE | SMALL 40 image : '../img/m/map_zoom_in.png', //커ì¤í ì´ë¯¸ì§ ì¬ì© (커ì¤í 컨í¸ë¡¤ë¬ë¡ íë¡ì¸ì¤ 구í) 41 position : naver.maps.Position.TOP_RIGHT //컨í¸ë¡¤ë¬ ìì¹ 42 } 43 }; 44 if(is_custom){ 45 var locationBtnHtml = '<a href="#" class="btn" style="position: absolute; cursor: pointer; top: 75px; left: 11.4px; width: 28px; height: 28px; border-style: solid;border-width: 0px;"><span class="spr_trff spr_ico_mylct"><img src="../img/m/map_current_position2.png"></span></a>';// íì¬ìì¹ ë°í ë²í¼ html 46 47 var customControl = new naver.maps.CustomControl(locationBtnHtml, { //íì¬ ìì¹ ë°íë²í¼ 기ë¥ì ìí 커ì¤í 컨í¸ë¡¤ë¬ ì¤ì 48 position : naver.maps.Position.TOP_RIGHT //ì¤ ì»¨í¸ë¡¤ë¬ ìëì ìì¹ 49 }); 50 51 oMap = new naver.maps.Map(mapId, mapOptions);//ë§µ ê°ì²´ ì ì¸ 52 53 customControl.setMap(oMap);//커ì¤í 컨í¸ë¡¤ë¬ ì¶ê° 54 oMap.setOptions("scrollWheel", false); //ì¤í¬ë¡¤ íë ì¶ì ê¸°ë¥ on/off 55 oMap.setOptions("draggable", true);// ëëê·¸ ì§ë ì´ë ê¸°ë¥ on/off 56 57 var domEventListener = naver.maps.Event.addDOMListener(customControl.getElement(), 'click', function(){ 58 navigator.geolocation.getCurrentPosition( 59 function(position){ 60 var client_lat = position.coords.latitude; 61 var client_lng = position.coords.longitude; 62 63 var map_data = [{ 64 'point' : new naver.maps.LatLng(client_lat, client_lng) //ë§ì»¤ ì¤ì ì ìí íì¬ ìì¹ ë°ì´í° 65 }]; 66 67 var setPoint = map_data[0].point; 68 oMap.setCenter(setPoint); // ì§ì¤ë¡ì¼ì´ì ì¼ë¡ ë°í ë°ì íì¬ ìì¹ì ê²½ë , ìë를 ë§µ ì¼í°ë¡ ê°ëë¡ í¨ 69 oMap.setZoom(14); 70 71 setMarker(map_data, 'current'); // íì¬ ìì¹ ë°í ì ë§ì»¤ ì¤ì 72 73 }); 74 }); 75 } 76 setMarker(data, 'default'); 77 } 78 79 function setMapGps(data){ 80 81 var GpsMapOptions = { 82 center : data.point, 83 size : data.size, 84 zoom : 14, 85 zoomControl : true,//ì¤ ì»¨í¸ë¡¤ë¬ (ë²í¼) 86 zoomControlOptions : { 87 style : naver.maps.ZoomControlStyle.SMALL, //LARGE | SMALL 88 image : '../img/m/map_zoom_in.png', //커ì¤í ì´ë¯¸ì§ ì¬ì© (커ì¤í 컨í¸ë¡¤ë¬ë¡ íë¡ì¸ì¤ 구í) 89 position : naver.maps.Position.TOP_RIGHT //컨í¸ë¡¤ë¬ ìì¹ 90 } 91 }; 92 93 var currentPositionHtml = '<a href="#" class="btn" style="position: absolute; cursor: pointer; top: 75px; left: 11.4px; width: 28px; height: 28px; background-repeat: no-repeat; border-style: solid;border-width: 0px;"><span class="spr_trff spr_ico_mylct"><img src="../img/m/map_reload.png"></span></a>'; 94 95 var customBtn = new naver.maps.CustomControl(currentPositionHtml, { 96 position : naver.maps.Position.TOP_RIGHT //ì¤ ì»¨í¸ë¡¤ë¬ ìëì ìì¹ 97 }); 98 99 oMap = new naver.maps.Map(mapId, GpsMapOptions); 100 101 oMap.setOptions("scrollWheel", false); //ì¤í¬ë¡¤ íë ì¶ì ê¸°ë¥ on/off 102 oMap.setOptions("draggable", true);// ëëê·¸ ì§ë ì´ë ê¸°ë¥ on/off 103 104 customBtn.setMap(oMap); 105 106 107 var domEventListner = naver.maps.Event.addDomListener(customBtn.getElement(), 'click', function(){ 108 data.point = cartMarker.getPosition(); 109 updateMapGps(data, true); 110 }); 111 112 updateMapGps(data, true); 113 114 checkUseDrag(); 115 116 } 117 118 var updateMapGps = function(data, isRefresh){ 119 120 if(!isDrag || isRefresh){ 121 setMarker(data, 'car'); 122 navigator.geolocation.getCurrentPosition( 123 function(position){ 124 var client_lat = position.coords.latitude; 125 var client_lng = position.coords.longitude; 126 127 var pointArray = []; 128 pointArray.push(new naver.maps.LatLng(client_lat, client_lng)); 129 pointArray.push(data.point); 130 oMap.fitBounds(pointArray); 131 132 var currentData = [{'point' : new naver.maps.LatLng(client_lat, client_lng)}]; 133 134 setMarker(currentData, 'current'); 135 136 }, function(error){ 137 } 138 ); 139 } 140 141 }; 142 143 var getMap = function(){ 144 return oMap; 145 }; 146 147 148 function checkUseDrag(){ 149 naver.maps.Event.addListener(oMap, 'dragstart', onDragStart, function(){ 150 isDrag = true; 151 152 clearTimeout(timer); 153 timer = setTimeout(function(){ 154 isDrag = false;
155 }, dragBackTime); 156 157 }); 158 159 return isDrag; 160 } 161 162 var setMarker = function(markerData, type){ 163 164 if(type == 'current'){ // ë§ì»¤ ìµì 165 var markerOptions = { 166 position : markerData[0].point, 167 icon : { 168 url : "../img/m/my_map_point.png" 169 } 170 }; 171 }else if(type == 'car'){ 172 var markerOptions = { 173 position : markerData[0].point, 174 icon : { 175 url : "../img/m/map_car_pin.png" 176 } 177 }; 178 }else{ 179 var markerOptions = { 180 position : markerData[0].point, 181 icon : { 182 url : "../img/m/map_point.png" 183 } 184 }; 185 186 } 187 var marker = new naver.maps.Marker(markerOptions); 188 marker.setMap(oMap); 189 190 if(type == "current"){ 191 var oInfoWnd = new naver.maps.InfoWindow({ 192 position : markerData[0].point, 193 content : 'ë´ìì¹' 194 }); 195 196 oInfoWnd.open(oMap, markerData.point); 197 window.setTimeout(function(){ 198 oInfoWnd.close(); 199 }, 1000);//ì ë³´ì°½ ìê° ì¤ì 200 } 201 202 if(type == 'car'){ 203 204 if(cartMarker == ""){ 205 var carmarkerOptions = { 206 position : markerData[0].point, 207 icon : { 208 url : "../img/m/map_car_pin.png" 209 } 210 }; 211 var caroInfoWnd = new naver.maps.InfoWindow({ 212 position : markerData[0].point, 213 content : 'car' 214 }); 215 216 caroInfoWnd.open(oMap, markerData.point); 217 window.setTimeout(function(){ 218 caroInfoWnd.close(); 219 }, 1000);//ì ë³´ì°½ ìê° ì¤ì 220 221 cartMarker = new naver.maps.Marker(carmarkerOptions); 222 } 223 224 var markerPoint = cartMarker.getPosition(); 225 226 if(markerPoint != null){ 227 228 if((markerPoint.x != markerData.point.x) || (markerPoint.y != markerData.point.y)){ 229 cartMarker.setPosition(markerData.point); 230 } 231 232 }else{ 233 cartMarker.setPosition(markerData.point); 234 // oMap.addOverlay(cartMarker); 235 } 236 237 }else{ 238 $.each(markerData, function(key, obj){ 239 var markerPoint = obj.point; 240 if(type == 'current'){ 241 242 if(currentMarker == ""){ 243 var currentMarkerOptions = { 244 position : markerData[0].point, 245 icon : { 246 url : "../img/m/my_map_point.png" 247 } 248 }; 249 250 var currentoInfoWnd = new naver.maps.InfoWindow({ 251 position : markerData[0].point, 252 content : 'ë´ìì¹' 253 }); 254 255 currentoInfoWnd.open(oMap, markerData.point); 256 window.setTimeout(function(){ 257 currentoInfoWnd.close(); 258 }, 1000);//ì ë³´ì°½ ìê° ì¤ì 259 260 261 currentMarker = new naver.maps.Marker(currentMarkerOptions); 262 } 263 currentMarker.setPosition(markerPoint); 264 }else{ 265 266 267 var oMarker = new naver.maps.Marker(markerOptions); 268 269 oMarker.setPosition(markerPoint); 270 271 //ë¼ë²¨ ì ë³´ 272 // oMarker.attach('click', function(oCustomEvent) { 273 // oInfoWnd.setVisible(false); 274 // if(oMarker.getCoveredMarkers().length == 1){ 275 // var map_link = ""; 276 // if(obj.link != "" && typeof obj.link != "undefined"){ 277 // map_link = "onClick=\"location.href='"+obj.link+"'\""; 278 // }else if (obj.idx > 0){ 279 // map_link = "onClick=\"move_map_detail('"+obj.idx+"')\""; 280 // } 281 // 282 // 283 // var content = '<div class="cocoam_map_big_info_wrap '+(obj.img ? '' :'img_thumb')+'" '+map_link+'><div class="cocoam_map_big_info">'+ 284 // '<div class="cocoam_map_img">'+ 285 // '<img height="40" src="'+obj.img+'">'+ 286 // '</div>'+ 287 // (obj.tel==''?'<p class="line2 pt20 pr10">'+obj.name+'</p>':'<p class="line2">'+obj.name+'</p>')+ 288 // (obj.tel==''?'':'<p class="telnum">'+obj.tel+'</p>')+ 289 // '<span></span>'+ 290 // '</div></div>'; 291 // 292 // 293 // oInfoWnd.setContent(content); 294 // oInfoWnd.setPoint(markerPoint); 295 // oInfoWnd.setPosition({right : -62, top : 30}); 296 // oInfoWnd.setVisible(true); 297 // oInfoWnd.autoPosition(); 298 // }else{ 299 // $.each(markerData,function(key,obj){ 300 // $("#"+mapId+" .nmap_duplayer a:Contains('"+obj.name+"')").off("
300click.map_group"+key).on("click.map_group"+key,function(){ 301 // if(obj.link != "" && typeof obj.link != "undefined"){ 302 // location.href=obj.link; 303 // }else if (obj.idx > 0){ 304 // move_map_detail(obj.idx); 305 // } 306 // }); 307 // }); 308 // } 309 // }); 310 } 311 }); 312 } 313 }; 314 315 return { 316 init : function(id, data){ 317 return init(id, data); 318 }, 319 initGps : function(id, data){ 320 return initGps(id, data); 321 }, 322 getMap : function(){ 323 return getMap(); 324 }, 325 updateMapGps : function(data){ 326 return updateMapGps(data, false); 327 } 328 }; 329}();
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.