Mam pole kodu pocztowego, które ma zdarzenie onKeyup w jQuery - chodzi o to, że po pełnym wprowadzeniu kodu pocztowego wywołanie funkcji API geokodujących w Mapach Google w celu uzyskania lokalizacja natychmiast oparta na tym kodzie pocztowym.Ulepszanie zdarzenia keyup wywołania API, gdy pojawi się, gdy użytkownik zakończył wpisywanie:
Ten kod działa, ale chciałbym znaleźć rozwiązanie, które idealnie nie wywoła API wiele razy, ale poczekaj i zobacz, czy użytkownik zakończył pisanie przy użyciu jakiejś metody czekania na x ilość czasu, a następnie wywołanie API .
Czy ktoś może zaproponować najlepszy sposób na zrobienie tego?
$("#txtPostcode").keyup(function() {
var postcode = $('#txtPostcode').val().length
if (postcode.length >= 5 && postcode.length <= 8) {
console.log('length is a valid UK length for a postcode');
// some logic here to run with some way to work out if user has 'finished' typing
callGoogleGeocodingAPI(postcode);
}
});
Prawdopodobny duplikat [funkcji odbicia w jQuery] (http://stackoverflow.com/questions/27787768/debounce-function-in-jquery) – Piskvor