2015-09-15 536 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);