Показать сообщение отдельно
  #3 (permalink)  
Старый 08.02.2019, 04:02
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 456

gsdev99,
function initData(key, url, onComplete, time) {
    var value = localStorage[key];
    if (value) {
        value = JSON.parse(value);
        if (new Date - value.time > time) {
            update();
        } else {
            onComplete(value.data);
        }
    } else {
        update();
    }
    function update() {
        $.getJSON(url, function (data) {
            value = { time: +new Date, data: data };
            localStorage[key] = JSON.stringify(value);
        }).always(function () {
            onComplete(value && value.data);
        });
    }
}

initData('myData', 'example.json', function (data) {
    if (!data) return;
    // data.id
    // data.name
    // data.value
}, 30 * 60 * 1000);

Последний раз редактировалось Rise, 08.02.2019 в 04:06.
Ответить с цитированием