2015-09-15 299 views
0

我已经集成了一个谷歌地图在我的网页上添加一个搜索框,它与下面的代码:谷歌地图API,搜索框

var input = document.getElementById('pac-input'); 
var searchBox = new google.maps.places.SearchBox(input); 
map.controls[google.maps.ControlPosition.TOP_LEFT].push(input); 

// Bias the SearchBox results towards current map's viewport. 
map.addListener('bounds_changed', function() { 
    searchBox.setBounds(map.getBounds()); 
});     

map.controls[google.maps.ControlPosition.TOP_LEFT].push(input); 
var autocomplete = new google.maps.places.Autocomplete(input); 
autocomplete.bindTo('bounds', map); 

autocomplete.addListener('place_changed', function() { 
    var place = autocomplete.getPlace(); 
    if (!place.geometry) { 
     return; 
    } 

    // If the place has a geometry, then present it on a map. 
    if (place.geometry.viewport) { 
     map.fitBounds(place.geometry.viewport); 
    } else { 
     map.setCenter(place.geometry.location); 
     map.setZoom(17); 
    } 
});     

目前这给我一份有自动完成列表中,这是一个搜索框好。但是我必须点击这个列表中的一个项目才能到达该位置。如果我只是在输入中输入一个命中输入,什么也没有发生。 任何帮助?

谢谢!

回答

0

尝试改变

var searchBox = new google.maps.places.SearchBox(input); 

var autocomplete = new google.maps.places.Autocomplete(input);