카카오맵 setMap() 속성오류문의

[FAQ] 지도/로컬 API 문의 전 꼭 읽어 주세요.

// 마커 정보를 셋팅한다.

function setMarker3(org) {

org = JSON.parse(org);

var index = org.index;

var data = org.data;



var imgSrc = imgSrc4;



if (index == "1") {

    imgSrc = imgSrc1;

} else if (index == "2") {

    imgSrc = imgSrc2;

} else if (index == "3") {

    imgSrc = imgSrc3;

}



//alert("22222222222222   "+markerInfo.length);

var imgSize = null;

var markerImage = null;

var marker = null;

let fragment = document.createDocumentFragment();

listEl = document.getElementById('placesList'); //좌측메뉴 SPOT Element 정보

   

removeAllChildNods(listEl); // spotList를 지운다.



//alert(markerInfo);

//removeMarker();

for (var k= 0; k< markerInfo.length; k++ ) {

    //infowindow.close();

    markerInfo[k].setMap();

    //alert(markerInfo[k]);

}



//markerInfo = [];

// 마커 정보를 생성한다.

$.each(data, function(index, obj) {

var a = "<div style ='font-style:italic; border-radius:30px;'>"+obj.svcNm+"</div>";

var b = obj.distance; //사고장소와의거리

markerInfo.push({

        grgId       : obj.grgId,

        //title     : obj.svcNm,

        title       : a,

        sendtitle   : obj.svcNm,

        distance    : b,

        latlng      : new kakao.maps.LatLng(obj.lngt, obj.la),

        x           : obj.la,

        y           : obj.lngt,

        addr        : obj.addr,

        csntsYn     : obj.csntsYn,

        imageSrc    : imgSrc,

        imageSize   : new kakao.maps.Size(35,31)

});

});

$.each(markerInfo,function(index,obj) {

var imgOptions =  {

    spriteSize : new kakao.maps.Size(36, 691), // 스프라이트 이미지의 크기

    spriteOrigin : new kakao.maps.Point(0, (index*46)+10), // 스프라이트 이미지 중 사용할 영역의 좌상단 좌표

    offset: new kakao.maps.Point(13, 37) // 마커 좌표에 일치시킬 이미지 내에서의 좌표

}

// 마커 이미지 생성

markerImage = new kakao.maps.MarkerImage(obj.imageSrc, obj.imageSize);

//markerImage = new kakao.maps.MarkerImage(obj.imageSrc, obj.imageSize,imgOptions);

//마커 생성

marker = new kakao.maps.Marker({

    map : map,

    title : obj.title,

    position: obj.latlng,

    image: markerImage

});

// 마커에 주소를 표시한다.

if(flag_showAddr == true) {

    if(obj.addr == null ) {

        obj.addr = getAddrByGCS({x:obj.x, y:obj.y});

    }

    //displayInfowindow(marker, obj.title, obj.addr);

}

// 커스텀 오버레이에 표출될 내용으로 HTML 문자열이나 document element가 가능합니다

var content = '<div class="customoverlay">' +

    '    <span class="title">'+obj.title+'</span>' +

    '</div>';

// 커스텀 오버레이가 표시될 위치입니다

//var position_c = new kakao.maps.LatLng(37.54699, 127.09598);  

// 커스텀 오버레이를 생성합니다

if(obj.title =="<div style ='font-style:italic; border-radius:30px;'>사고장소</div>"){

    customOverlay = new kakao.maps.CustomOverlay({

        map: map,

        position: obj.latlng,

        content: content,

        yAnchor: 0.1

    });

}

map.panTo(marker.n);

// 마커에 이벤트를 등록한다.

// if(flag_markerClick == true) {

//  setMarkerEvent(marker, obj.title, obj, markerInfo);                

// }

let itemEl = getSpotListEl(index, obj); // 검색 결과 항목 Element를 생성합니다

// 왼쪽 메뉴 클릭이벤트

itemEl.onclick = function () {

    // 지도 중심을 부드럽게 이동시킵니다

    // 만약 이동할 거리가 지도 화면보다 크면 부드러운 효과 없이 이동합니다

    var moveLatLng = new kakao.maps.LatLng(obj.y, obj.x);  

    map.panTo(moveLatLng);

    //displayInfowindow2(marker, obj.title, obj.addr,obj.x, obj.y);

};

// 왼쪽 메뉴 더블클릭이벤트

itemEl.ondblclick = function () {

    //nexacro platform으로 선택된 주소 data넘겨주기

    if(obj.title=="<div style ='font-style:italic; border-radius:30px;'>사고장소</div>"){

        var str = "acci"+","+obj.title +"," + obj.addr;

        window.NEXACROHTML.FireUserNotify(str);

    }else{

        var str = "ondblclick"+","+obj.sendtitle +"," + obj.addr;

        window.NEXACROHTML.FireUserNotify(str);

    }

}

fragment.appendChild(itemEl);

});

if(flag_left) {

// 검색결과 항목들을 검색결과 목록 Element에 추가합니다

listEl.appendChild(fragment);

}

}

현재 넥사크로라는 UI툴에 연동해서 카카오맵을 사용중인데
리스트를 조회해서
해당함수를 호출하게 되면

setmap 속성을 불러올수 없다고 하는데 어떤게 문제일까요? ㅠㅠ

자체 해결했습니다

일주일동안 ㅇ해결안됐는데

질문글 올리고 잠깐 생각나서 수정했습니다. ㅎㅎㅎ

바보같이 마커 배열이름 다른게 해서 하고 있었네요 ㅋㅋㅋ

2개의 좋아요