Daily Archives: 19.07.2011
Очередь на js
Нужно было сделать простенькую очередь, чтобы добавить много колбэков, а потом выполнить последний из очереди по таймауту, отсчитываемому от времени последнего добавления. Очередь получилась простенькая (за полчаса много и не сделаешь). Использование:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
//опциональное время в милисекундах - таймаут от последнего события var queue = queueFactory( 5000 ); // у меня дёргается скрипт по определённому событию, в нём написано $( window ).bind( 'event1', function( Event, Data ) { if ( ! queue.length() ) { showLoader(); } queue.add( function() { console.log( 'event1' ); } ); } ); $( window ).bind( 'event2', function( Event, Data ) { if ( ! queue.length() ) { showLoader(); } queue.add( function() { console.log( 'event2' ); } ); } ); |
В итоге через 5 секунд после наступления последнего из событий в консоль выведется соответствующее сообщение.