Сейчас узнаем, какой подарок выпадет именно Вам
Крутите колесо
Ура, вы выиграли!
Ваш приз:
Годовой доступ
к видео на mo-ti -20%
по промокоду T19RAY
Промокод действителен 3 дня

Оформить доступ с промокодом
100
Как поменять дату в тексте по заданному графику в Тильда
Base Jumping
Next Jump 30-07-2020

Как поменять дату в тексте по заданному графику в Тильда

1
Создали блок CR43
2
Добавили код в блок Другое - Т123
В коде прописали график дат
Mo-ti Level Up
Видео инструкции по добавлению кода и работе с Zero Block.
Выводим нужную дату по графику в стандартный или ZeroBlock. Скрываем и показываем нужные блоки по заданным диапазонам дат.
Длительность видео 21 минута
Фрагмент видео
Библиотека для примера
<script>
document.addEventListener("DOMContentLoaded", function() {
    (function () {
    //Создаём список дат формата год-месяц-день
    const daTeMass = [ 
    
        '20-03-2025',  
        '27-04-2025',  
        '05-05-2025',  
        '10-05-2025',  
        '14-05-2025',  
        '20-06-2025',  
        '27-07-2025',  
        '05-08-2025',  
        '10-08-2025',  
        '14-08-2025',  
        '20-09-2025',  
        '27-10-2025',  
        '05-11-2025',  
        '10-11-2025',  
        '14-12-2025',  
        '06-01-2026', 
    ];
    
    
    const dataM = new Date();
    const monthM = dataM.getMonth()+1;
    const dayM = dataM.getDate();
    const fullDateM = dataM.getFullYear() + '-' +
        ((''+monthM).length<2 ? '0' : '') + monthM + '-' +
        ((''+dayM).length<2 ? '0' : '') + dayM;
    const currentDate = new Date(fullDateM); 
    
    let findDate = ''; 
    
    for (let key = 0; key < daTeMass.length; key++) {
        let listDate = daTeMass[key].split('-');
        listDate = listDate[2]+'-'+listDate[1]+'-'+listDate[0];
        const checkdate = new Date(listDate);
        if (checkdate <= currentDate) {
            findDate = daTeMass[key + 1];
        } else {
            findDate = daTeMass[key];
            break;
        };
    };

    let printfullDate = findDate;
    if(!findDate){printfullDate = "...soon"};
    //Выводим нужную дату из списка
    const element = document.querySelector('.t941__descr');
    if (element) {
        element.textContent = `Next Jump ${printfullDate}`;
    };
 
    })();    
});    
</script>
Библиотека для примера
вывод своего текста
<script>
document.addEventListener("DOMContentLoaded", function() {
    (function () {
    //Создаём список дат формата год-месяц-день
    const daTeMass = [ 
        
        ['20-03-2025', '20 марта 2025'],
        ['27-04-2025', '27 апреля 2025'],
        ['05-05-2025', '5 мая 2025'],
        ['10-05-2025', '10 мая 2025'],
        ['14-05-2025', '14 мая 2025'],
        ['20-06-2025', '20 июня 2025'],
        ['27-07-2025', '27 июля 2025'],
        ['05-08-2025', '5 августа 2025'],
        ['10-08-2025', '10 августа 2025'],
        ['14-08-2025', '14 августа 2025'],
        ['20-09-2025', '20 сентября 2025'],
        ['27-10-2025', '27 октября 2025'],
        ['05-11-2025', '5 ноября 2025'],
        ['10-11-2025', '10 ноября 2025'],
        ['14-12-2025', '14 декабря 2025'],
        ['06-01-2026', '6 января 2026'],

    ];
    
    
    const dataM = new Date();
    const monthM = dataM.getMonth()+1;
    const dayM = dataM.getDate();
    const fullDateM = dataM.getFullYear() + '-' +
        ((''+monthM).length<2 ? '0' : '') + monthM + '-' +
        ((''+dayM).length<2 ? '0' : '') + dayM;
    const currentDate = new Date(fullDateM); 
    
    let findDate = ''; 
    
    for (let key = 0; key < daTeMass.length; key++) {
        let listDate = daTeMass[key][0].split('-');
        listDate = listDate[2]+'-'+listDate[1]+'-'+listDate[0];
        const checkdate = new Date(listDate);
        if (checkdate <= currentDate) {
            findDate = daTeMass[key + 1][1];
        } else {
            findDate = daTeMass[key][1];
            break;
        };
    };

    let printfullDate = findDate;
    if(!findDate){printfullDate = "...soon"};
    //Выводим нужную дату из списка
    const element = document.querySelector('.t941__descr');
    if (element) {
        element.textContent = `Next Jump ${printfullDate}`;
    };
 
    })();    
});    
</script>
Библиотека для примера
Показ блоков по графику
<script>
document.addEventListener("DOMContentLoaded", function() {
    (function () {
        //Создаём список дат формата год-месяц-день
        const daTeMass = [ 
            
            ['20-03-2025', '#rec1075020823'],
            ['27-04-2025', '#rec1073364774'],
            ['05-05-2025', '#rec3890122605'],
            ['10-05-2025', '#rec3890123936'],
            ['14-05-2025', '#rec3890125263'],
            ['20-06-2025', '#rec1075020826,#rec1073364771'],
            ['27-07-2025', '#rec1073364771'],
            ['05-08-2025', '#rec3890129252'],
            ['10-08-2025', '#rec3890130584'],
            ['14-08-2025', '#rec3890131916'],
            ['20-09-2025', '#rec3890133247'],
            ['27-10-2025', '#rec3890134578'],
            ['05-11-2025', '#rec3890135909'],
            ['10-11-2025', '#rec3890137233'],
            ['14-12-2025', '#rec3890138562'],
            ['06-01-2026', '#rec3890139891']
    
        ];
        
        
        const dataM = new Date();
        const monthM = dataM.getMonth()+1;
        const dayM = dataM.getDate();
        const fullDateM = dataM.getFullYear() + '-' +
            ((''+monthM).length<2 ? '0' : '') + monthM + '-' +
            ((''+dayM).length<2 ? '0' : '') + dayM;
        const currentDate = new Date(fullDateM); 
        
        let findBlocks = ''; 
        
        for (let key = 0; key < daTeMass.length; key++) {
            const blocks = document.querySelectorAll(daTeMass[key][1]);
            blocks.forEach(block => {
              block.classList.add('hide-date-block');
            });
        };
        
        
        for (let key = 0; key < daTeMass.length; key++) {
            let listDate = daTeMass[key][0].split('-');
            listDate = listDate[2]+'-'+listDate[1]+'-'+listDate[0];
            const checkdate = new Date(listDate);
            if (checkdate <= currentDate) {
                findBlocks = daTeMass[key + 1][1];
            } else {
                findBlocks = daTeMass[key][1];
                break;
            };
        };
        
        console.log(findBlocks);
        
        if(findBlocks!=''){
            const blocks = document.querySelectorAll(findBlocks);
            blocks.forEach(block => {
                block.classList.remove('hide-date-block');
            });
            setTimeout(function() {
                window.dispatchEvent(new Event('resize', { bubbles: true }));
            }, 500);
        };

 
    })();    
});    
</script>

<style>
.hide-date-block{
    display: none;
}    
</style>
Made on
Tilda