1
자바 스크립트 맵/Gmap3에 조금 새로운 ... Google 맵 DROP 애니메이션을 사용하여 하나씩지도에 마커를 표시하려고합니다. 애니메이션이 잘 작동합니다. 여기 내 JSGoogle지도 마커 애니메이션 일시 중지 및 재생
var ll = [];
var JSONData;
var pathData = [];
var tick = 10;
$(document).ready(function() {
$('#ctl00_ContentPlaceHolder1_rewind').button();
$('#ctl00_ContentPlaceHolder1_play').button();
$('#ctl00_ContentPlaceHolder1_stop').button();
$('#ctl00_ContentPlaceHolder1_forward').button();
});
function pageLoad(sender, args) {
$('#ctl00_ContentPlaceHolder1_rewind').button();
$('#ctl00_ContentPlaceHolder1_play').button();
$('#ctl00_ContentPlaceHolder1_stop').button();
$('#ctl00_ContentPlaceHolder1_forward').button();
}
function showEmptyMap() {
$('#mapDiv').gmap3({
map: {
options: {
mapTypeId: google.maps.MapTypeId.TERRAIN,
mapTypeControl: true,
mapTypeControlOptions: {
style: google.maps.MapTypeControlStyle.DROPDOWN_MENU
},
navigationControl: true,
scrollwheel: true,
streetViewControl: true
}
},
clear: {}
});
$('#mapDiv').gmap3();
}
function designMap(JSONData) {
for (var i = 0; i < JSONData.length; i++) {
// ll[i] = '{latLng:\'[' + data[i].lastlatitude + ',' + data[i].lastlongitude + ']\',data:\'' + data[i].lastaddress + '\'}';
ll[i] = { latLng: [JSONData[i].latitude, JSONData[i].longitude], data: JSONData[i].data, options: { icon: JSONData[i].iconImage} };
pathData[i] = [JSONData[i].latitude, JSONData[i].longitude];
}
$('#mapDiv').gmap3({ clear: {} });
$('#mapDiv').gmap3({
map: {
options: {
mapTypeId: google.maps.MapTypeId.TERRAIN,
mapTypeControl: true,
mapTypeControlOptions: {
style: google.maps.MapTypeControlStyle.DROPDOWN_MENU
},
navigationControl: true,
scrollwheel: true,
streetViewControl: true
}
},
polyline: {
options: {
strokeColor: "#FF0000",
strokeOpacity: 1.0,
strokeWeight: 2,
path: [pathData]
}
},
autofit: {}
});
plotPoint(JSONData);
}
function plotPoint(JSONPassed) {
for (var k = JSONPassed.length - 1; k >= 0; k--) {
var m = new google.maps.LatLng(JSONPassed[k].latitude, JSONPassed[k].longitude);
(function(n) {
var image = JSONPassed[k].iconImage;
var HTML = JSONPassed[k].data;
setTimeout(function() {
alert(image);
addMarker(n, image,HTML);
}, k * 500);
} (m));
}
}
function addMarker(m, image,data) {
var map = $('#mapDiv').gmap3('get');
var marker = new google.maps.Marker({
position: m,
map: map,
draggable: false,
animation: google.maps.Animation.DROP,
icon: image,
clickable: true
});
marker.info = new google.maps.InfoWindow({
content: data
});
google.maps.event.addListener(marker, 'click', function() {
marker.info.open(map, marker);
});
}
지도 애니메이션이 중지되어야하는 일시 중지 버튼을 만들고 다시 클릭해야 다시 시작해야합니다. 어떻게해야합니까? ??? :(그것을 사용하는 것이 더 간단 할 수 있도록 나는 자신의 코드를 만들어 .. :(
내 Windows 버전의 크롬보다 코드가 제대로 작동 함 (마커 최종 위치와 관련된 작은 깜박임 효과가 있음) - 마커 최적화 설정 : false로 문제를 해결할 수 있음 : 여기에 대한 자세한 정보 : https://code.google.com/p/gmaps-api-issues/issues/detail?id=3608 –
세상에 .. !!! 똑똑한 코드 ... – writeToBhuwan
만약 내가 당신에게 100 +를 줄 수 있다면 ... :) – writeToBhuwan