2012-05-30 6 views
-1

Я пытаюсь создать карту с API Google Maps v3 в JS и VB.NET в качестве массивов данных на стороне сервера для карты. Моя карта загружалась успешно с помощью кластеров, но когда я пытаюсь применить кластеры на карте, мои маркеры становятся невидимыми и не отображаются на карте.
Вот мой код для создания карты, а также для кластеровМой кластер на карте не работает

<script src="http://www.google.com/jsapi"></script> 

    <script type="text/javascript"> 
     var script = '<script type="text/javascript" src="http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/src/markerclusterer'; 
     if (document.location.search.indexOf('compiled') !== -1) { 
     script += '_compiled'; 
     } 
     script += '.js"><' + '/script>'; 
     document.write(script); 
    </script> 
<script type="text/javascript"> 
    google.load('maps', '3', { 
     other_params: 'sensor=false' 
     }); 

     google.setOnLoadCallback(initialize); 

var map; 
var markers = [];  
var markerClusterer = null; 
function initialize() { 
var GPS = <%=GPS %> 
var map_center = new google.maps.LatLng(31.2330555556,72.3330555556); 
    var myOptions = { 
     zoom: 6, 
     scaleControl:true, 
     pancontrol: true, 
     streetViewControl: true, 
     center: map_center, 
     mapTypeControl: true, 
     mapTypeControlOptions: { 
     style: google.maps.MapTypeControlStyle.DROPDOWN_MENU 
    }, 
     mapTypeId: google.maps.MapTypeId.HYBRID 
    }  
    map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); 
    var infowindow = new google.maps.InfoWindow(); 

    var image = 'ico/gn.png'; 
     for(var i=0; i<GPS.length; i++) 
     { 

     var marker=new google.maps.Marker({ 
     position:GPS[i].GPS, 
     draggable:true, 
     icon:image, 
     Info: '<table frame=box><tr><td align="Left"><font face="Arial" size=2 color=#336699>Shop Name:</td><td align="Left"><font face="Arial" size=2>'+ GPS[i].SHOP + '</font></td></tr><tr>'+ 
      '<td align="Left"><font face="Arial" size=2 color=#336699>Owner:</td><td align="Left"><font face="Arial" size=2>'+ GPS[i].OWNER + '</font></td></tr>'+ 
      '<td align="Left"><font face="Arial" size=2 color=#336699>Mobile:</td><td align="Left"><font face="Arial" size=2>'+ GPS[i].MOBILE + '</font></td></tr>'+ 
      '<tr><td align="Left"><font face="Arial" size=2 color=#336699>Distributer:</td><td align="Left"><font face="Arial" size=2>'+ GPS[i].DIST + '</font></td></tr><tr>'+ 
      '<tr><td align="Left"><font face="Arial" size=2 color=#336699>Region:</td><td align="Left"><font face="Arial" size=2>'+ GPS[i].REGION + '</font></td></tr>'+ 
      '<tr><td align="Left"></td><td align="Left"><font face="Arial" size=2 color=#336699><a target=_blank href=http://221.120.216.52/elp/sfpl.php?ccode=01&amp;&regno='+ GPS[i].REGNO +'>View</a></td></tr>'+ 
      '</table>', 
      title:GPS[i].SHOP + '(' +GPS[i].DIST + ')' 
     }); 
     markers.push(marker); 
     google.maps.event.addListener(markers[i], 'click', function() { 
      infowindow.setContent(this.Info); 
      infowindow.open(map,this); 
      }); 
     } 
     markerClusterer = new MarkerClusterer(map,markers, 
     { 
     maxZoom:5 
     }); 
     } 



    </script> 

Кто-нибудь? Пожалуйста, помогите мне выйти из этой проблемы, а также рассказать мне, что я не вижу в своем коде.

+0

Любой может ответить на этот вопрос – user1397781

ответ

0

Я не уверен, в чем проблема. Когда я заменить

var GPS = <% GPS %> 

с:

var pos1 = new google.maps.LatLng(31.2330555556,72.3330555556); 
var pos2 = new google.maps.LatLng(30.5,71.1); 
var pos3 = new google.maps.LatLng(32.4,73.4); 

    var test = { 
    GPS: pos1, 
    SHOP: 'Blah', 
    OWNER: 'bob', 
    REGION: 'pakistan', 
    DIST: 1 
} 

var test2 = { 
    GPS: pos2, 
    SHOP: 'Blawefah', 
    OWNER: 'cat', 
    REGION: 'pakistan', 
    DIST: 2 
} 

var test3 = { 
    GPS: pos3, 
    SHOP: 'Blsdfah', 
    OWNER: 'fred', 
    REGION: 'pakistan', 
    DIST: 3 
} 

var GPS = new Array(); 
GPS[0] = test; 
GPS[1] = test2; 
GPS[2] = test3; 

я получаю мои три тестовых маркеров. Когда я уменьшаю масштаб, эти три маркера исчезают и появляется кластер маркеров с номером 3 (чтобы обозначить количество маркеров в кластере).

Вы уверены, что ваш GPS-массив правильно заполнен из VB?

+0

Да Сэр Маркеры загружают колодец из массива VB Только кластеры не появляются из Makrers – user1397781

+0

Если U хочет, то U может проверить мою карту здесь http://202.125.144.34/Map/test1. aspx – user1397781

+0

@ user1397781 Эта страница не подходит для меня. –