diff --git a/js/main.js b/js/main.js index 9694f43..5b1489d 100644 --- a/js/main.js +++ b/js/main.js @@ -1907,6 +1907,9 @@ function stopHistoryPlayback() { clearInterval(mapState.playbackTimer); mapState.playbackTimer = null; } + if (mapState.playbackMarker) { + mapState.playbackMarker.setMap(null); + } if (!_overrideRange) { setCurrentLocationVisible(true); } @@ -1935,14 +1938,19 @@ function startHistoryPlayback(speed) { mapState.playbackIndex = 0; } - if (mapState.playbackMarker) { - mapState.playbackMarker.setMap(null); - } moveSelectedHistoryPoint(mapState.playbackIndex, false); - if (mapState.playbackMarker) { + if (!mapState.playbackMarker) { + mapState.playbackMarker = new naver.maps.Marker({ + position: points[mapState.playbackIndex].latlng, + map: mapState.map, + zIndex: 120, + icon: createFaceMarkerIcon() + }); + } else { mapState.playbackMarker.setMap(mapState.map); mapState.playbackMarker.setPosition(points[mapState.playbackIndex].latlng); + mapState.playbackMarker.setIcon(createFaceMarkerIcon()); } let tick = 0; @@ -2060,12 +2068,18 @@ function moveSelectedHistoryPoint(index, pan = false, syncSlider = true) { position: point.latlng, map: mapState.map, zIndex: 115, - icon: createFaceMarkerIcon() + icon: { + content: '
', + anchor: new naver.maps.Point(10, 10) + } }); } else { mapState.selectedMarker.setMap(mapState.map); mapState.selectedMarker.setPosition(point.latlng); - mapState.selectedMarker.setIcon(createFaceMarkerIcon()); + mapState.selectedMarker.setIcon({ + content: '
', + anchor: new naver.maps.Point(10, 10) + }); } if (mapState.playbackMarker) { mapState.playbackMarker.setPosition(point.latlng);