Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > Скрывать div блок после 5-ти обновлений страницы


Автор: dexterx 14.3.2017, 17:11
Здравствуйте, такая проблема, нужно сделать скрытие div-a после, например 5-ти обновлений страницы каждым посетителем.
И установить куки на 3 дня. 
То есть мы прячем "block" после того как пользователь 5 раз обновил страницу.

Код

<div id="block">Скрыть эту информацию  после  5-ти просмотров на 3 дня</div>

Автор: evilice 6.4.2017, 13:51
Жаль, что с момента постановки вопроса прошло много времени.
Всё же я оставлю здесь свой вариант решения этой задачи. Может кому-то и пригодится.
Внимание, ES6.

Код

(id=>{
    const time  = (new Date()).getTime();
    const _default = ()=>({
        counter: 0,
         time: (time + 3*24*60*60*1000)
    });
    const json = localStorage.getItem(id);
    let store = json && JSON.parse(json) || _default();

    if(store.time < time)
        store = _default();
    if(++store.counter > 5)
        document.getElementById(id).style.display = 'none';
    else
        localStorage.setItem(id, JSON.stringify(store));
})('block_id');

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)