У меня сейчас проблема с тем, что у меня есть объект javascript, который пытается использовать setInterval для вызова частной функции внутри себя. Тем не менее, он не может найти объект, когда я пытаюсь вызвать его. У меня такое ощущение, что это потому, что window.setInterval пытается вызвать объект извне, но не имеет ссылки на объект. FWIW - я не могу заставить его работать с публичной функцией.
Основным требованием является то, что мне может понадобиться иметь несколько экземпляров этого объекта для отслеживания нескольких загрузок, которые происходят одновременно. Если у вас есть дизайн лучше, чем текущий, или вы можете заставить работать текущий, то я весь в ушах.
Следующий код предназначен для непрерывной проверки связи с веб-службой для получения статуса загрузки моего файла:
var FileUploader = function(uploadKey) {
var intervalId;
var UpdateProgress = function() {
$.get('someWebService', {},
function(json) {
alert('success');
});
};
return {
BeginTrackProgress: function() {
intervalId = window.setInterval('UpdateProgress()', 1500);
},
EndTrackProgress: function() {
clearInterval(intervalId);
}
};
};
Вот как это называется:
var fileUploader = new FileUploader('myFileKey');
fileUploader.BeginTrackProgress();