TL; DR. У меня есть функция, которая запускается на конце панорамирования карты открытых слоев. Не хочу, чтобы он горел постоянно.
У меня есть функция, которая запускается в конце панорамирования карты. Я хочу, чтобы он не запускал функцию, пока, скажем, через 3 секунды после завершения кастрюли. Хотя я не хочу ставить функцию в очередь на запуск 10 или около того раз, как это делает сейчас setTimeout.
Как я могу отложить запуск функции на n секунд, а затем запустить ее только один раз, независимо от того, сколько раз она вызывалась?
map.events.register("moveend", map, function() {
setTimeout(SetLocation, 5000);
});
Moveend:
moveend - triggered after a drag, pan, or zoom completes
Код выше даже с использованием setTimeout (func, delay); по-прежнему срабатывает несколько раз при запуске. Как я могу предотвратить это?