네이버 지도맵으로 제작시문제... ㅠㅠ 채택완료
https://sir.kr/g5_skin/13619?sfl=wr_subject%7C%7Cwr_content&stx=%EC%A7%80%EB%8F%84&page=2">https://sir.kr/g5_skin/13619?sfl=wr_subject%7C%7Cwr_content&stx=%EC%A7%80%EB%8F%84&page=2
게시판은 위 스킨을 이용하고 있습니다.
제작사이트
http://apnew08.cafe24.com/bbs/board.php?bo_table=store">http://apnew08.cafe24.com/bbs/board.php?bo_table=store
잘안되는 부분이 처음접속시 지도에 등록한 지점에 마커아이콘만 나오고 아이콘클릭시 정보가 보여지게 되는데요
전 이걸 처음접속시 아이콘클릭없이 등록한 정보가 같이 보여지게하고싶습니다
소스코드를 많이 여기저기 수정하면서 했지만 잘안되어 도움을 요청드립니다 ㅠ.ㅠ
첨부파일 기능이 없어 소스를 올릴수가없네요.. ㅠㅠ
답변 3개
아래코드를
for (var i=0, ii=markers.length; i<ii; i++) {
naver.maps.Event.addListener(markers[i], 'click', getClickHandler(i));
}
이렇게 변경
for (var i=0, ii=markers.length; i<ii; i++) {
infoWindows[i].open(map, markers[i]);
}
댓글을 작성하려면 로그인이 필요합니다.
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
/*
공부하는이 : 정적인손님
스킨명 : 그누보드5 용 네이버지도 v3보고 따라한 네이버맵 멀티마커 게시판 스킨 v1.0.0 PC버전
버전 : 1.0.0
공유범위 : 수정배포 적극권장
<script type="text/javascript" src="https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%EB%84%A4%EC%9D%B4%EB%B2%84API%ED%82%A4&submodules=panorama,geocoder,drawing,visualization">https://openapi.map.naver.com/openapi/v3/maps.js?clientId=네이버API키&submodules=panorama,geocoder,drawing,visualization"></script>
또는 아래 $navermapkey 에 넣으면 되어요.
*/
// 선택옵션으로 인해 셀합치기가 가변적으로 변함
$navermapkey = 'jNKuAAmfvpVKMfdaxEUO';
$colspan = 10;
if ($is_checkbox) $colspan++;
if ($is_good) $colspan++;
if ($is_nogood) $colspan++;
// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
add_stylesheet('<link rel="stylesheet" href="'.$board_skin_url.'/style.css">', 0);
?>
< script type="text/javascript" src="https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"><script type="text/javascript" src="<?php echo $board_skin_url ?>/MarkerOverlappingRecognizer.js"></script>
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"><!-- 게시판 목록 시작 { -->
< div id="bo_list" style="width:100%;">
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"><div class="container">
< /div>
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> <form name="fboardlist" id="fboardlist" action="./board_list_update.php" onsubmit="return fboardlist_submit(this);" method="post">
<input type="hidden" name="bo_table" value="<?php echo $bo_table ?>">
<input type="hidden" name="sfl" value="<?php echo $sfl ?>">
<input type="hidden" name="stx" value="<?php echo $stx ?>">
<input type="hidden" name="spt" value="<?php echo $spt ?>">
<input type="hidden" name="sca" value="<?php echo $sca ?>">
<input type="hidden" name="sst" value="<?php echo $sst ?>">
<input type="hidden" name="sod" value="<?php echo $sod ?>">
<input type="hidden" name="page" value="<?php echo $page ?>">
<input type="hidden" name="sw" value="">
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> <div id="map" style="width:100%;height:600px;"></div>
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"><script>
var MARKER_ICON_URL = '<?php echo $board_skin_url ?>/img/mapicon001.png';
var MARKER_HIGHLIGHT_ICON_URL = '<?php echo $board_skin_url ?>/img/mapicon002.png';
var MARKER_SPRITE_POSITION = {
<?php for ($i=0; $i<count($list); $i++) {
$yti=($list[$i][subject]);
$ylink="<a href='{$list[$i]['href']}'>{$yti}</a>";
$ylat=($list[$i][wr_3]);
$ylng=($list[$i][wr_4]);
?>
<?php if ($list[$i]['subject']){ ?>
"<?php echo $yti?>": [<?php echo $ylat?>, <?php echo $ylng?>,"<?php echo $ylink?>"]
<?php }?>
<?php if ($i==count($list)-1) continue; ?>
<?php if ($list[$i]['subject']){ ?>
,
<?php } ?>
<?php } ?>
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> };
var position = new naver.maps.LatLng(37.380177, 126.802934);
var mapOptions = {
//zoom: 7,
center: position,
mapTypeControl: true,
mapTypeControlOptions: {
style: naver.maps.MapTypeControlStyle.BUTTON,
position: naver.maps.Position.TOP_LEFT
},
zoomControl: true,
zoomControlOptions: {
style: naver.maps.ZoomControlStyle.SMALL,
position: naver.maps.Position.BOTTOM_RIGHT
},
scaleControl: true,
scaleControlOptions: {
position: naver.maps.Position.RIGHT_CENTER
},
logoControl: true,
logoControlOptions: {
position: naver.maps.Position.TOP_LEFT
},
mapDataControl: true,
mapDataControlOptions: {
position: naver.maps.Position.BOTTOM_LEFT
}
};
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> var map = new naver.maps.Map(document.getElementById('map'),mapOptions);
var bounds = map.getBounds(),
southWest = bounds.getSW(),
northEast = bounds.getNE(),
lngSpan = northEast.lng() - southWest.lng(),
latSpan = northEast.lat() - southWest.lat();
var markers = [], infoWindows = [];
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> var recognizer = new MarkerOverlappingRecognizer({
highlightRect: false,
tolerance: 15
});
recognizer.setMap(map);
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> function highlightMarker(marker) {
var icon = marker.getIcon();
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> if (icon.url !== MARKER_HIGHLIGHT_ICON_URL) {
icon.url = MARKER_HIGHLIGHT_ICON_URL;
marker.setIcon(icon);
}
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> marker.setZIndex(1000);
}
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> function unhighlightMarker(marker) {
var icon = marker.getIcon();
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> if (icon.url === MARKER_HIGHLIGHT_ICON_URL) {
icon.url = MARKER_ICON_URL;
marker.setIcon(icon);
}
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> marker.setZIndex(100);
}
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> for (var key in MARKER_SPRITE_POSITION) {
var position = new naver.maps.LatLng(MARKER_SPRITE_POSITION[key][0], MARKER_SPRITE_POSITION[key][1]);
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> var marker = new naver.maps.Marker({
map: map,
position: position,
title: key,
icon: {
url: MARKER_ICON_URL,
size: new naver.maps.Size(50, 50),
anchor: new naver.maps.Point(25, 25),
origin: new naver.maps.Point(0, 0)
},
zIndex: 100
});
var infoWindow = new naver.maps.InfoWindow({
content: '<div style="width:100px;text-align:center;padding:5px;">'+ MARKER_SPRITE_POSITION[key][2] +'</div>'
});
markers.push(marker);
infoWindows.push(infoWindow);
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> marker.addListener('mouseover', function(e) {
highlightMarker(e.overlay);
});
marker.addListener('mouseout', function(e) {
unhighlightMarker(e.overlay);
});
recognizer.add(marker);
window.MARKER = marker;
};
naver.maps.Event.addListener(map, 'zoom_changed', function() {
updateMarkers(map, markers);
});
naver.maps.Event.addListener(map, 'dragend', function() {
updateMarkers(map, markers);
});
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> function updateMarkers(map, markers) {
var mapBounds = map.getBounds();
var marker, position;
for (var i = 0; i < markers.length; i++) {
marker = markers[i]
position = marker.getPosition();
if (mapBounds.hasLatLng(position)) {
showMarker(map, marker);
} else {
hideMarker(map, marker);
}
}
}
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> function showMarker(map, marker) {
if (marker.setMap()) return;
marker.setMap(map);
}
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> function hideMarker(map, marker) {
if (!marker.setMap()) return;
marker.setMap(null);
}
function getClickHandler(seq) {
return function(e) {
var marker = markers[seq],
infoWindow = infoWindows[seq];
if (infoWindow.getMap()) {
infoWindow.close();
} else {
infoWindow.open(map, marker);
}
}
}
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> for (var i=0, ii=markers.length; i<ii; i++) {
naver.maps.Event.addListener(markers[i], 'click', getClickHandler(i));
}
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> var overlapCoverMarker = null;
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> naver.maps.Event.addListener(recognizer, 'overlap', function(list) {
if (overlapCoverMarker) {
unhighlightMarker(overlapCoverMarker);
}
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> overlapCoverMarker = list[0].marker;
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> naver.maps.Event.once(overlapCoverMarker, 'mouseout', function() {
highlightMarker(overlapCoverMarker);
});
});
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> naver.maps.Event.addListener(recognizer, 'clickItem', function(e) {
recognizer.hide();
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> if (overlapCoverMarker) {
unhighlightMarker(overlapCoverMarker);
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> overlapCoverMarker = null;
}
});
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> map.setZoom(7);
< /script>
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> <div class="search_wraps">
<div class="container" style="text-align:center;">
<input type="text" value="">
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> <select style="display:inline-block;border:1px solid #ccc;vertical-align:middle;">
<option>동별</option>
</select>
<select style="display:inline-block;border:1px solid #ccc;vertical-align:middle;">
<option>업종별</option>
</select>
https://openapi.map.naver.com/openapi/v3/maps.js?clientId=https://openapi.map.naver.com/openapi/v3/maps.js?clientId=%20echo%20$navermapkey%20?"> <button>검색</button>
</div>
</div>
소스코드입니다
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인