Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Ограничитель на выполнение функции (https://javascript.ru/forum/misc/22884-ogranichitel-na-vypolnenie-funkcii.html)

uznik73 04.11.2011 08:01

Ограничитель на выполнение функции
 
Есть функция
document.onkeydown=key;
function key(event)
{
    if(event.keyCode==74){
 jQuery('img[class*=bm_refresh]').click();
    }
}

Которая вешает на клавишу клавиатуры, действие клика по элементу, все работает, но, необходимо как то ограничить количество исполнений функции, то есть правило что то вроде "не более 2ух исполнений в секунду", иначе с зажатой кнопкой функция выполняется слишком часто(по каждому клику отправляется запрос на сервер) что не есть гуд..
Пробовал прикрутить к этому settimeout но не вышло, может кто то поможет разобраться с этим?

Aetae 04.11.2011 08:14

Примитивный набросок, красивости сам наведёшь:
document.onkeydown=key;
flag=true;
function key(event)
{
    if(flag&&event.keyCode==74){
        flag=false;
        jQuery('img[class*=bm_refresh]').click();
        setTimeout(function(){flag=true},500);
    }
}

uznik73 04.11.2011 08:22

Спасибо!


Часовой пояс GMT +3, время: 20:06.