Добрый день. Помогите пожалуйста разобраться в проблеме.
Данные в глобальной переменной $data не сохраняются.
var $data = {};
var $IntervalID ='';
var $start = $('#start');
var $pause = $('#pause');
$start.on('click', function(){
//Отбираем данные и заносим их в переменную $data
// Если объект $data пустой - заполняем его
if ($.isEmptyObject($data)){
var $numL = $('#selectL :selected').val();
$.ajax({
type: 'POST',
url: '/ajax/getData/',
dataType: 'json',
data: {'numL': $numL},
success: function($data){
someFunc($data);
},
error: function(){
alert("Ошибка!");
}
});
} else { //в противном случае продолжаем выполнение someFunc
someFunc($data);
}
});
$pause.on('click', function(){
clearInterval($IntervalID);
$IntervalID = null;
});
function someFunc($data){
$IntervalID = setInterval(function(){
var $tmp = $data.shift();
$en_word.text($tmp.name);
}, 1500);
};
, по нажатию на кнопку $start получаем данные и запускается функция someFunc.
Кнопка $pause приостанавливает выполнение someFunc, а при повторном нажатии кнопки $start цикл должен продолжиться с момента остановки. На практике получается что переменная $data "обнуляется" и AJAX опять отбирает данные и все начинается с начала.
Т.е. проблема в том, что данные в переменной $data не сохраняются.