Как остановить рекурсивную функцию по клику?
Приветствую!
Подскажите, пожалуйста. Как можно остановить рекурсивную функцию по клику? $(document).ready(function($) { $("#sent").click(sent_get); $("#stop").click( /*тут нужно вызвать функции которая должна остановить sent_get () */ ); function sent_get () { $('result-box').prepend('<div class="result"></div>'); $.ajax({ url: 'go1.php', beforeSend: function () { var el_count; el_count = $('.result').length; if(el_count>5){ $('.result').remove(); el_count = 0; } $('.result-box').prepend('<div class="uk-panel uk-panel-box result"></div>'); $('.result').append('<i class="uk-icon-spinner uk-icon-spin"></i>') }, success: function(data){ $('.uk-icon-spin').remove(); $('.result').addClass('success'); $('div.result:first').append(data); sent_get (); } }); } }); Спасибо! |
Lutidza,
var amba = false ; $("#sent").click(function() { amba = false ; sent_get() }); $("#stop").click( function() { amba = true} ); function sent_get () { if(amba) return; |
Большое спасибо!
Дабы не плодить тем. Подскажите, пожалуйста, как можно запустить данный скрипт многопоточно? В идеале иметь ещё возможность управлять количеством потоков. |
Цитата:
|
Тогда такой ещё вопрос:
$.ajax({ url: 'go2.php', beforeSend: function () { var el_count; el_count = $('.result').length; //Удаляю блокие когда из становится больше 5 if(el_count>5){ $('.result').remove(); el_count = 0; } $('.result-box').prepend('<div class="uk-panel uk-panel-box result"></div>'); $('.result').addClass('result'+el_count); $('.result'+el_count).append('<i class="uk-icon-spinner uk-icon-spin"></i>') }, success: function(data){ $('.result'+el_count).children('i').remove(); $('.result'+el_count).addClass('success'); $('.result'+el_count).append(data); //sent_get (); } }); Как мне из этой функции "beforeSend: function () {...", предать значение переменной в el_count в эту "success: function(data){..." |
Lutidza,
строку 4 перенести в строку 0 |
Спасибо :)
|
Цитата:
|
Часовой пояс GMT +3, время: 11:16. |