javascript
  • google-maps
  • google-maps-api-2
  • markermanager
  • 2012-01-09 24 views 1 likes 
    1

    私はGPS追跡サーバーとデータベースからMarkerManagerで追加されたマーカーを消去する問題を持っています。マイ切り捨てコード:Google Maps API v2:MarkerManager clearMarkers(); does not work

    <html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml"> 
    <head> 
    <script src='http://maps.google.com/maps?file=api&amp;v=2&amp;hl=pl&amp;key=my_key' type='text/javascript'></script> 
    </head> 
    <body onload='mapStart()' onunload='GUnload()'> 
    <script type='text/javascript'> 
    var map; 
    var mgr=false; 
    var timeOut=null; 
    function mapStart() 
    { 
        if(GBrowserIsCompatible()) 
        { 
        map = new GMap2(document.getElementById("map"),{mapTypes:  [G_NORMAL_MAP,G_HYBRID_MAP,G_SATELLITE_MAP,G_PHYSICAL_MAP]}); 
        center = new GLatLng(52.536395, 13.42534); 
        map.setCenter(center, 6); 
        mgr = new GMarkerManager(map,{maxZoom: 19}); 
        refreshMarkers(); 
        } 
    } 
    function refreshMarkers() 
    { 
        clearTimeout(timeOut); 
        GDownloadUrl('dane2.php', function(dane,respCode) 
        { 
         if(respCode==200) 
         { 
          var xml = GXml.parse(dane); 
          var marker = dodajMarker(arguments, 15, 15); 
         } 
         else 
         { 
          alert('Cant open dane2.php'); 
         } 
        }); 
        mgr.clearMarkers(); // ??? 
        timeOut=setInterval("refreshMarkers()",2000); 
    } 
    function dodajMarker(arguments, minZoom, maxZoom) 
    { 
        var ikona = new GIcon(); 
        ikona.image = 'http://www.google.com/intl/en_ALL/mapfiles/dd-start.png'; 
        ikona.iconSize = new GSize(20, 34); 
        ikona.iconAnchor = new GPoint(10, 34); 
        var marker = new GMarker(new GLatLng(latitude,longitude),{icon: ikona}); 
        mgr.addMarker(marker,minZoom,maxZoom); 
        return marker; 
    } 
    
    </script> 
    <div id="map" style="align: center; width: 1000px; height: 490px; solid black;  background: gray;"></div> 
    </body> 
    </html> 
    

    マイページ:http://m2mgsm.com/gps/index.phpあなたがログインすることができます:「管理者」、パスワード:「12345」テストマップ(「Mapatesty」 - すぐにのみ、英語ポーランド語)をクリックして、メニューにして、IMEIを選択します( "Wybierz IMEI")) 35583201をチェックし、Route( "Pokażtrasę:")とFrom/To( "Od/Do")の日付(例:05.01.2012/05.01.2012)と "Filtruj"を確認します。マップスクリプトのソースをフレームで表示することができます。私は、例えばマーカだけをリフレッシュしたいと思います。 3秒。新しいマーカーは古いマーカーにオーバーレイされています... Ps。私の英語には申し訳ありません。

    答えて

    2

    あなたがエラーを持っているが、あなたのJSです:

    ReferenceError: kontener is not defined [http://m2mgsm.com/gps/mapatesty.php:259] 
    TypeError: Object #<yv> has no method 'clearMarkers' [http://m2mgsm.com/gps/mapatesty.php:459] 
    

    は、その内蔵したデバッガのJavaScriptコードをトレースし、バグを排除するためにFirebugの拡張子やChromeとFirefoxのを使用してみてください。

    関連する問題