Javascript 谷歌地图API3地理编码

Javascript 谷歌地图API3地理编码,javascript,google-maps,Javascript,Google Maps,我有关于地理编码器的问题!我有20个地址,我的地图上只有11个点 我知道“延迟”和“设置超时”,但我不知道如何使用它 我在这页找到了答案- Where写了关于setTimeout(以100ms的延迟调用geocoder),但我不知道如何在我的代码中使用此代码!请帮帮我,大约两周我做不到!!!在我的代码中,我也使用MarkerClustererV3。这是工作。showAddress–是俄语地址。我只需要地理编码器,救命!我在Oracle BI中使用的这张地图。谢谢 向你问好,瓦西里 <scr

我有关于地理编码器的问题!我有20个地址,我的地图上只有11个点

我知道“延迟”和“设置超时”,但我不知道如何使用它

我在这页找到了答案-

Where写了关于setTimeout(以100ms的延迟调用geocoder),但我不知道如何在我的代码中使用此代码!请帮帮我,大约两周我做不到!!!在我的代码中,我也使用MarkerClustererV3。这是工作。showAddress–是俄语地址。我只需要地理编码器,救命!我在Oracle BI中使用的这张地图。谢谢

向你问好,瓦西里

<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false">
</script>
<script src="http://www.google.com/jsapi"></script> 
<script type="text/javascript" src="http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/src/markerclusterer.js"></script>
<script type="text/javascript">
    var geocoder;
    var markers = [];
    var map;



    function initialize() {
        geocoder = new google.maps.Geocoder();
        var latlng = new google.maps.LatLng(55.02940345314003, 82.919938);
        var myOptions = {
            zoom: 3,
            center: latlng,
            mapTypeId: google.maps.MapTypeId.ROADMAP


        }
        map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
        GetMapAdress ();

        setTimeout(createCluster, 2000);


    }

    function createCluster() 
    {
        var markerCluster = new MarkerClusterer(map, markers);
    }

    function showAddress(address, comment) {
        if (geocoder) {

            geocoder.geocode( { 'address': address}, function(results, status) {
                if (status == google.maps.GeocoderStatus.OK) {
                    //map.setCenter(results[0].geometry.location);
                    var marker = new google.maps.Marker({
                        map: map,
                        position: results[0].geometry.location,
                        title: 'bla bla'
                    });
                    markers.push(marker);
                    var infowindow = new google.maps.InfoWindow({
                        content:comment
                    });

                    google.maps.event.addListener(marker, 'click', function() {
                        infowindow.open(map,marker);
                    });        
                } 

                else {
                //alert("Mistake: " + status);
                }

            });
        }
    }

    function GetMapAdress () {
      showAddress('Новосибирск, Красный проспект, 66', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 70', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 76', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 77', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 86', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 88', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 99', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 94', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 98', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 87', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 101', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 168', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 157', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 52', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 33', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 40', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 23', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 32', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
      showAddress('Новосибирск, Красный проспект, 13', 'Тут необходимая инфа <span style="font-weight: bold">Очень нужная инфа</span>');
   }
</script>
<script src="http://code.jquery.com/jquery-latest.js" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready( function(){initialize();return true;});
</script>

<body>
<div id="map_canvas" style="width: 900px; height: 500px; border: 3px solid orange" > </div>
</body>

var地理编码器;
var标记=[];
var映射;
函数初始化(){
geocoder=新的google.maps.geocoder();
var latlng=新的google.maps.latlng(55.02940345314003,82.919938);
变量myOptions={
缩放:3,
中心:拉特林,
mapTypeId:google.maps.mapTypeId.ROADMAP
}
map=new google.maps.map(document.getElementById(“map_canvas”),myOptions);
getmapaddress();
setTimeout(createCluster,2000);
}
函数createCluster()
{
var markerCluster=新的MarkerClusterer(地图、标记);
}
函数showAddress(地址、注释){
if(地理编码器){
geocoder.geocode({'address':address},函数(结果,状态){
if(status==google.maps.GeocoderStatus.OK){
//map.setCenter(结果[0].geometry.location);
var marker=new google.maps.marker({
地图:地图,
位置:结果[0]。geometry.location,
标题:“布拉布拉”
});
标记器。推(标记器);
var infowindow=new google.maps.infowindow({
内容:评论
});
google.maps.event.addListener(标记'click',函数(){
信息窗口。打开(地图、标记);
});        
} 
否则{
//警报(“错误:+状态”);
}
});
}
}
函数getMapAddress(){
放映地址(“66”和“66”);
放映地址(“70”、“70”、“70”、“70”);
展示地址(“76”、“76”和“76”);
放映地址(“77”和“77”);
放映地址(“86”和“86”);
放映地址(“88”和“88”);
展示地址(“99”、“99”和“99”);
放映地址(“94”、“94”和“94”);
放映地址(“98”、“98”、“98”和“98”);
放映地址(“87”和“87”);
展示地址(“101”和“101”);
放映地址('Ббббббббббббббббббббббббббб;
放映地址(“157”、“157”、“157”和“157”);
放映地址(“52”、“52”和“52”);
放映地址(“33”、“33”、“33”、“33”);
放映地址(“40”和“40”);
展示地址(“23”、“23”、“23”、“23”);
放映地址(“32”和“32”);
放映地址(“13”、“13”、“13”、“13”);
}
$(document).ready(函数(){initialize();返回true;});

在这种情况下,问题似乎是您试图编码的几个地址根本不存在

新西伯利亚的Krasnyy Prospekt没有100到155之间的地址(但有184个)。你可以通过查看门牌号来了解这一点


您可以在搜索结果的命名方式中识别这一点。如果它是
Krasnyy Prospekt
而没有您搜索的号码,它会找到道路,但找不到地址。如果号码在搜索结果中,它确实找到了完整的地址

在这种特定情况下,问题似乎是您试图编码的几个地址根本不存在