2012-09-30 3 views
2

아마 분명합니다 ...하지만 나는 그것을 볼 수 없습니다. 다음 코드는 marker.setPosition 액션을 제외한 모든 것을 예상대로 작동합니다Google지도 Javascript API : marker.set 위치 문제

<head> 
<title>Test Simulation</title> 
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> 
<style type="text/css"> 
    html { height: 100% } 
    body { height: 100%; margin: 0; padding: 0 } 
    #map_canvas { height: 100% } 
</style> 
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?key=x&sensor=false"> 
</script> 

<script type="text/javascript"> 
    var marker = null; 
    var myLatlng = null; 
    var map = null; 
    var image = null; 
    var mapOptions = null 

    function movemarker() 
    { 
    xmlhttp=new XMLHttpRequest(); 
    xmlhttp.open("GET","http://x.com/x13/?testloc=1",false); 
    xmlhttp.send(); 

    var data = xmlhttp.responseText; 
    vals = data.split(','); 
    latv = parseFloat(vals[0]); 
    lonv = parseFloat(vals[1]); 
    myLatlng = new google.maps.LatLng(latv,lonv); 

    var fld = document.getElementById('before_map'); 
    fld.innerText = ' ' + 'lat:' + latv + ', lon: ' + lonv + ' ' + myLatlng.toString(); 
    marker.setPosition = myLatlng; 
    } 

    function initialize() 
    { 
    myLatlng = new google.maps.LatLng(44.809122,-36.650391); 
    mapOptions = 
    { 
     center: myLatlng, 
     zoom: 3, 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
    }; 
    map = new google.maps.Map(document.getElementById("map_canvas"), 
     mapOptions); 

    image = 'http://x.com/x_icon.gif'; 
    marker = new google.maps.Marker(
    { 
     position: myLatlng, 
     map: map, 
     icon: image, 
     title:"Hello World!" 
    }) 

    window.setInterval("movemarker()",5000); 
    } 
</script> 
</head> 
<body onload="initialize(); "> 
<div id="before_map">Test area...</div> 
<div id="map_canvas" style="align:right; width:600; height:500"></div> 

은 "before_map"시험 영역은 새로운 위도와 경도 값을 보여줍니다 -하는 업데이트를 5 초마다.

비슷한 질문에 대한 답변을 기반으로 조정했지만 여전히 문제가 있습니다.

답변

18

setPosition은 메소드입니다. 코드를 수정해야합니다.

marker.setPosition(myLatlng); 

해당 기능이 작동하는지 확인하십시오.

8

marker.setPosition 함수가 아닌 속성입니다, 당신이

marker.setPosition(myLatlng);

을 원한다고 생각