如何使用 mapbox 选择一个位置后关闭搜索结果? 我正在使用mapbox的自动完成功能,但在选择特定位置后,它不会关闭搜索结果框。我添加了这样的自动完成功能:
geocoder = L.mapbox.geocoderControl('mapbox.places', {position: 'topleft', keepOpen: true, autocomplete:true});
geocoder.addTo(map);
答案 0 :(得分:2)
删除use JonnyW\PhantomJs\Client;
function getVideoURL($link){
$client = Client::getInstance();
$request = $client->getMessageFactory()->createRequest($link, 'GET');
$response = $client->getMessageFactory()->createResponse();
$client->send($request, $response);
if($response->getStatus() === 200) {
// Dump the requested page content
return $response->getContent();
} else {
return false;
}
}
$link = htmlentities($_POST["link"]);
getVideoURL($link);
选项(使其始终打开)然后关闭侦听keepOpen
实例上的select
事件。解雇时使用L.mapbox.geocoderControl
方法。
_toggle
未记录并使用私人'因此,我不确定该解决方案/黑客的生命周期。但它有效;)
答案 1 :(得分:1)
我遇到了同样的问题并设法修复它:
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()解决方案对我不起作用,因为它使该字段永远关闭(单击放大镜图标时无法再次打开它)。
与@ iH8修复一样,它只是关于私有方法,所以它可能不会持久。