2011-10-20 3 views
0

임은 PHP 웹을하고는, 타이머와지도의 부하() 함수를 새로 호출입니다 ..이자바 스크립트 - 아약스와지도의 내용을 새로 구글 API를 새로 고침 이벤트

내 문제가 아무 문제 이잖아 나는 map.setCenter를 처음으로 써야한다. 지도에 넣은 마커를 검색하기 시작한 후 20 초 후에지도가 다시로드되고 다시 "setCenter"로 이동한다는 것을 상상해보십시오. 나는 그걸 원하지 않습니다. 나는 새로 고침하고 싶지만지도는 내가 찾는 곳에 머물러 있습니다 ...

거기에 어떤 기능이 있습니까? 여기 내 부하 기능

function load() { 
     if (GBrowserIsCompatible()) { 
     var map = new GMap2(document.getElementById("map")); 
     map.addControl(new GSmallMapControl()); 
     map.addControl(new GMapTypeControl()); 
     map.setCenter(new GLatLng(-34.603365,-58.379416),11); 
     map.enableScrollWheelZoom(); 


     GDownloadUrl("creoXml.php", function(data) { 
      var xml = GXml.parse(data); 
      var markers = xml.documentElement.getElementsByTagName("marker"); 
      for (var i = 0; i < markers.length; i++) { 
      var name = markers[i].getAttribute("numMovil"); 
      var type = "Movil"; 
      var nameTit = "Móvil "+name; 
      var point = new GLatLng(parseFloat(markers[i].getAttribute("latitud")), 
            parseFloat(markers[i].getAttribute("longitud"))); 
      var marker = createMarker(point, nameTit,type); 
      map.addOverlay(marker); 
      } 
     }); 
     } 
    } 




    function createMarker(point, name,type) { 
     var marker = new GMarker(point, customIcons[type]); 
     var html = "<b>" + name + "</b>"; 
     GEvent.addListener(marker, 'click', function() { 
     marker.openInfoWindowHtml(html); 
     }); 
     return marker; 
    } 

은 .. 내가로드 (호출 그 때마다) 내 setCenter이 있다는 것입니다 봐 내가이 상태로 setCenter를 제거하면,지도 .. 흰색 덕분에

답변

0

넣어집니다 코드에서 전역 변수를 호출하고로드 = 1이라고합니다.로드 함수에서 다음과 같이 입력하십시오.

if(loading==1){ 
    setCenter.... 
    loading=0; 
}