如何使用選擇一個位置後關閉搜索結果mapbox? 我正在使用mapbox的自動完成功能,但在選擇特定位置後,它並未關閉搜索結果框。我已經添加了自動完成功能是這樣的:如何使用mapbox選擇一個位置後關閉搜索結果
geocoder = L.mapbox.geocoderControl('mapbox.places', {position: 'topleft', keepOpen: true, autocomplete:true});
geocoder.addTo(map);
如何使用選擇一個位置後關閉搜索結果mapbox? 我正在使用mapbox的自動完成功能,但在選擇特定位置後,它並未關閉搜索結果框。我已經添加了自動完成功能是這樣的:如何使用mapbox選擇一個位置後關閉搜索結果
geocoder = L.mapbox.geocoderControl('mapbox.places', {position: 'topleft', keepOpen: true, autocomplete:true});
geocoder.addTo(map);
刪除keepOpen
選項(而保持它始終打開)。然後,關閉用於偵聽L.mapbox.geocoderControl
實例select
事件。發射時使用_toggle
方法。
var geocoder = L.mapbox.geocoderControl('mapbox.places', {
position: 'topleft',
//keepOpen: false,
autocomplete:true
});
geocoder.addTo(map);
geocoder.on('select', function() {
geocoder._toggle()
})
未記錄和使用'私人'的方法,因此我不確定這種解決方案的壽命/破解。但是,它的工作原理;)
我有同樣的問題,並設法解決它這樣的:
var geocoder = L.mapbox.geocoderControl('mapbox.places', {
position: 'topleft',
keepOpen: true,
autocomplete:true
});
geocoder.addTo(map);
geocoder.on('select', function() {
this._results.innerHTML = '';
this._input.value = '';
})
的_toggle()解決方案並沒有爲我工作,因爲它所做的領域密切永遠(couldn」當點擊放大鏡圖標時再次打開它)。
就像在@ iH8修復中,它只是關於私有方法,所以它可能不會持久。
Hi @ iH8感謝您的幫助。但似乎我錯過了一些東西,因爲我是新手。我添加了更新後的帖子中提到的自動完成功能。之後我需要添加功能嗎? –
更新我的示例 – iH8
很棒(y)它的作品:) –