이벤트리스너 추가부분 질문..
298
1 asked
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no">
<title>BARRIER FREE</title>
<link rel="stylesheet" href="/stylesheets/style.css"/>
<script type="text/javascript" src="https://openapi.map.naver.com/openapi/v3/maps.js?ncpClientId=2t3ojlwea9"></script>
</head>
<body>
<div id="navbar">barrier free</div>
<div id="infobox">
<form action="">
<div id="infotitle">filter</div>
<label for="filter"></label><br>
<select name="categories" id="categories">
<option value="all">All</option>
<option value="cosmetics">화장품</option>
</select>
<!-- <input type="submit" value="Submit"> -->
</form>
</div>
<div id="map" style="width:100%;height: 100vh"></div>
<script type="text/javascript" src="/data/data.js"></script>
<script>
var mapOptions = {
center: new naver.maps.LatLng(37.48124681977143, 126.95270482812877),
zoom: 17
};
var map = new naver.maps.Map('map', mapOptions);
var markerList=[];
var infowindowList=[];
for (var i in data){
var target = data[i];
var latlng = new naver.maps.LatLng(target.lat,target.lng);
marker = new naver.maps.Marker({
map:map,
position: latlng,
icon:{
content:"<div class='marker'></div>",
anchor : new naver.maps.Point(12,12)
}
});
var content=`<div class='infowindow_wrap'>
<div class='infowindows_title'> ${target.title}
<div class='infowindows_store'>${target.store}
<div class='infowindows_category'>${target.category}
<div class='infowindows_detail'>${target.detail}
</div> `
var infowindow = new naver.maps.InfoWindow({
content : content,
backgroundColor : "#00ff0000",
borderColor : "#00ff0000",
anchorSize : new naver.maps.Size(0,0)
})
markerList.push(marker);
infowindowList.push(infowindow);
}
for(var i=0; i<2;i++){
naver.maps.Event.addListener(markerList[i],"click",getClickHandler(i));
}
function getClickHandler(i){
return function(){
var marker = markerList[i];
var infowinidow=infowindowList[i];
if(infowindow.getMap()){//infowindow가 표시되어있는지
infowindow.close();
}else{
infowindow.open(map,marker)
}
}
}
</script>
</body>
</html>
도움을 받을 수 있을까요..Answer 2
0
질문 주셔서 감사합니다:)
해당 코드로 시험해본 결과 어디서 오류가 나는지 확인하기 위해서는
화면과 개발자 콘솔 화면을 캡쳐해서 보내주시면 더 빠르게 해결이 가능할 것 같습니다~!!
다소 번거롭더라도 빠르게 해결 해보도록 하겠습니다.
감사합니다~!!
0
for(var i=0; i<2;i++){
naver.maps.Event.addListener(markerList[i],"click",getClickHandler(i));
}
이부분에서 변수를 상수 2로 바꿔보긴했는데 이전에 변수로 선언했을 때도 결과는 같았습니다
map API
0
36
1
nodejs 터미널 인식
0
38
1
kakao is not defined 오류
0
415
1
nodemon ./bin/www 입력 시 오류
0
166
1
호스팅 및 도메인 관련
0
160
1
마커이미지가 깨집니다
0
145
2
nodemon설치와 express-generator 오류
0
222
1
코드를 다운받을수 있나요?
0
204
1
SUDO를 계속 입력하지 않는 방법을 알 수 있을까요?
0
601
1
var로 선언하는 이유
0
368
1
Places 코드가 안돼요.
0
351
0
애니메이션 관련 질문
0
271
1
(index):121 Uncaught ReferenceError: kakao is not defined at (index):121:10
0
617
0
히트맵 구성
0
244
0
for문 돌릴때 ii 에 대해서 궁금합니다.
1
389
1
express 설정
0
253
0
이름공간 문법?
0
271
0
마커가 안뜹니다
1
318
2
nodemon 설치 에러
0
413
1
AI NAVER API 관련 질문
1
373
2
궁금한게 있어요 link로 연결할때 href에 public 경로를 빼야만 적용되는 이유는 뭔가요??
1
225
0
node와 ncm 의 버전 확인이 안됩니다ㅠㅠ
0
423
1
저장후엔 localhost가 열리지 않네요ㅠ
0
299
0
설치가 안됩니다
0
200
1

