04.06.2015, 22:33
|
Аспирант
|
|
Регистрация: 03.05.2015
Сообщений: 42
|
|
Появление сообщения после окончания акции
Здравствуйте! Помогите, если кто знает.
Есть акция со счетчиком обратного отсчета (скрипт счетчика взят со стороннего сайта). Под ним форма заказа обратного звонка. Код счетчика и формы находится в каком-то диве.
Как сделать так, чтобы когда на счетчике устанавливаются нули, весь этот див менялся на другой див с сообщением, к примеру "Акция завершена!". Т.е нужно этим сообщением скрыть и счетчик и форму.
Да и еще, если для конкретного пользователя закончилась акция, то при каждом след. посещении сайта он видел "Акция завершена!"
Спасибо!
Последний раз редактировалось kos0760, 04.06.2015 в 22:44.
|
|
04.06.2015, 23:30
|
|
Аспирант
|
|
Регистрация: 07.04.2015
Сообщений: 65
|
|
Ты бы написал бы часть кода. А тож совсем непонятно что и как.
Ну ладно.
<div id="akciay">
<div id="aktivna"></div>
<div id='zakonchena'>Акция закончена</div>
</div>
#akciay{
width: 100px;
height: 100px;
}
#zakonchena{
display: none;
}
#aktivna{
display: block;
}
function checkAkciya(){
if (schetchik == 0){
document.getElementById('aktivna').style.display = 'none';
document.getElementById('zakonchena').style.display = 'block';
}
}
|
|
05.06.2015, 00:04
|
Аспирант
|
|
Регистрация: 03.05.2015
Сообщений: 42
|
|
Прошу прощения! Действительно не очень понятно для других.
Код счетчика я формировал на сайте megatimer.ru
В результате чего получил скрипт:
<script src="http://megatimer.ru/s/f7ba7428062d9563bf6c7aeaea28b7b6.js"></script>
Есть один див:
<div id="begin">
<script src="http://megatimer.ru/s/f7ba7428062d9563bf6c7aeaea28b7b6.js"></script>
<!--Ниже сама форма-->
<form action="new_zacaz.php" method="post">
бла-бла-бла
</form>
</div>
Второй див:
<div id="end">
<span class="">Акция завершена!</span>
</div>
В скрипте настроено время, допустим 3 часа до конца акции с момента первого посещения пользователем сайта. После этого скрипт показывает нули. Вот я и хочу, чтобы этих нулей при след. посещении сайта тем же пользователем (к примеру на след день), перед его глазами не было, т.е. скрыть счетчик и форму и вместо нее через три часа подсунуть див с надписью "Акция завершена!". Вот как-то так.
Последний раз редактировалось kos0760, 05.06.2015 в 00:34.
|
|
05.06.2015, 08:26
|
|
Профессор
|
|
Регистрация: 16.07.2014
Сообщений: 267
|
|
kos0760,
Этот мегатаймер похоже не генерирует события по окончании отсчёта, документации по нему нет. Поэтому для ваших нужд он не подходит, вам нужен таймер генерирующий событие, чтобы можно было на него обработчик повесить. В обработчике можно и пользователю в cookies прописать(как вариант), что акция закончилась.
|
|
05.06.2015, 11:29
|
Аспирант
|
|
Регистрация: 03.05.2015
Сообщений: 42
|
|
Сообщение от Sigizmund2012
|
kos0760,
Этот мегатаймер похоже не генерирует события по окончании отсчёта, документации по нему нет.
|
Спасибо за подсказку, но я в курсе, что он только отсчитывает время и больше ничего. Вы не обращайте на него вообще внимания. Попробую еще раз объяснить, что мне нужно. Мне нужна смена блоков спустя некоторое время, т.е. блок содержащий счетчик должен смениться блоком с надписью "Акция завершена!".
Это аналогично смене изображений в слайдшоу. Только здесь вместо картинок - дивы.
Меня почти понял Leon-on12. Он написал скрипт, но без учета времени. Т.е., если брать в пример код, что я привел выше, сначала диву "begin" должно быть присвоено значение display:block, а диву "end" display:none. Затем, допустим, через 5 мин наоборот, див "begin" должен иметь значение display:none, а див "end" display:block.
Последний раз редактировалось kos0760, 05.06.2015 в 11:46.
|
|
05.06.2015, 13:01
|
Профессор
|
|
Регистрация: 07.11.2013
Сообщений: 4,662
|
|
kos0760,
Цитата:
|
Вы не обращайте на него вообще внимания.
|
как не обращать, от "события по окончании отсчёта" и зависит "смена блоков", это вы чего то не понимаете. Чтобы это событие появилось нужно править timer.min.js вряд ли такое вам под силу, так что ищите другой таймер с таким событием.
Последний раз редактировалось Rise, 05.06.2015 в 13:13.
|
|
05.06.2015, 13:51
|
Аспирант
|
|
Регистрация: 03.05.2015
Сообщений: 42
|
|
Похоже я не правильно объясняю. Ну да ладно. Спрошу по-другому.
Вот простой код:
<div id="akciya">
<div id="begin">
Начало акции.
</div>
<div id="end">
Акция завершена!
</div>
</div>
Можно ли сделать и как, чтобы один раз через 10 сек фраза "Начало акции" сменялась на "Акция завершена!".
|
|
05.06.2015, 14:10
|
Профессор
|
|
Регистрация: 07.11.2013
Сообщений: 4,662
|
|
kos0760,
<div id="akciya">
<div id="begin">
Начало акции.
</div>
<div id="end" style="display:none;">
Акция завершена!
</div>
</div>
<script>
setTimeout(function(){begin.style.display='none',end.style.display='block'},10000);
</script>
|
|
05.06.2015, 15:44
|
Аспирант
|
|
Регистрация: 03.05.2015
Сообщений: 42
|
|
Сообщение от Rise
|
kos0760,
<div id="akciya">
<div id="begin">
Начало акции.
</div>
<div id="end" style="display:none;">
Акция завершена!
</div>
</div>
<script>
setTimeout(function(){begin.style.display='none',end.style.display='block'},10000);
</script>
|
Скажите как сделать, чтобы при обновлении страницы браузера фраза "Акция завершена" не менялась обратно на "Начало акции".
|
|
|
|