Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.06.2015, 22:33
Аспирант
Отправить личное сообщение для kos0760 Посмотреть профиль Найти все сообщения от kos0760
 
Регистрация: 03.05.2015
Сообщений: 42

Появление сообщения после окончания акции
Здравствуйте! Помогите, если кто знает.

Есть акция со счетчиком обратного отсчета (скрипт счетчика взят со стороннего сайта). Под ним форма заказа обратного звонка. Код счетчика и формы находится в каком-то диве.

Как сделать так, чтобы когда на счетчике устанавливаются нули, весь этот див менялся на другой див с сообщением, к примеру "Акция завершена!". Т.е нужно этим сообщением скрыть и счетчик и форму.

Да и еще, если для конкретного пользователя закончилась акция, то при каждом след. посещении сайта он видел "Акция завершена!"

Спасибо!

Последний раз редактировалось kos0760, 04.06.2015 в 22:44.
Ответить с цитированием
  #2 (permalink)  
Старый 04.06.2015, 23:30
Аватар для Leon-on12
Аспирант
Отправить личное сообщение для Leon-on12 Посмотреть профиль Найти все сообщения от Leon-on12
 
Регистрация: 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';
	}
}
Ответить с цитированием
  #3 (permalink)  
Старый 05.06.2015, 00:04
Аспирант
Отправить личное сообщение для kos0760 Посмотреть профиль Найти все сообщения от kos0760
 
Регистрация: 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.
Ответить с цитированием
  #4 (permalink)  
Старый 05.06.2015, 08:26
Аватар для Sigizmund2012
Профессор
Отправить личное сообщение для Sigizmund2012 Посмотреть профиль Найти все сообщения от Sigizmund2012
 
Регистрация: 16.07.2014
Сообщений: 267

kos0760,
Этот мегатаймер похоже не генерирует события по окончании отсчёта, документации по нему нет. Поэтому для ваших нужд он не подходит, вам нужен таймер генерирующий событие, чтобы можно было на него обработчик повесить. В обработчике можно и пользователю в cookies прописать(как вариант), что акция закончилась.
Ответить с цитированием
  #5 (permalink)  
Старый 05.06.2015, 11:29
Аспирант
Отправить личное сообщение для kos0760 Посмотреть профиль Найти все сообщения от kos0760
 
Регистрация: 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.
Ответить с цитированием
  #6 (permalink)  
Старый 05.06.2015, 13:01
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

kos0760,
Цитата:
Вы не обращайте на него вообще внимания.
как не обращать, от "события по окончании отсчёта" и зависит "смена блоков", это вы чего то не понимаете. Чтобы это событие появилось нужно править timer.min.js вряд ли такое вам под силу, так что ищите другой таймер с таким событием.

Последний раз редактировалось Rise, 05.06.2015 в 13:13.
Ответить с цитированием
  #7 (permalink)  
Старый 05.06.2015, 13:51
Аспирант
Отправить личное сообщение для kos0760 Посмотреть профиль Найти все сообщения от kos0760
 
Регистрация: 03.05.2015
Сообщений: 42

Похоже я не правильно объясняю. Ну да ладно. Спрошу по-другому.

Вот простой код:

<div id="akciya">
   <div id="begin">
       Начало акции.
   </div>
   <div id="end">
       Акция завершена!
   </div>
</div>


Можно ли сделать и как, чтобы один раз через 10 сек фраза "Начало акции" сменялась на "Акция завершена!".
Ответить с цитированием
  #8 (permalink)  
Старый 05.06.2015, 14:10
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 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>
Ответить с цитированием
  #9 (permalink)  
Старый 05.06.2015, 15:44
Аспирант
Отправить личное сообщение для kos0760 Посмотреть профиль Найти все сообщения от kos0760
 
Регистрация: 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>
Скажите как сделать, чтобы при обновлении страницы браузера фраза "Акция завершена" не менялась обратно на "Начало акции".
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Закрытие контактной формы после отправки сообщения. maddy Общие вопросы Javascript 2 12.01.2015 07:25
появление div после закрытия menu DynkanMaclaud Events/DOM/Window 3 11.08.2014 10:37
Резиновые дивы с прокруткой Java Script Mary-Jay Элементы интерфейса 10 24.07.2013 17:51
Переход на страницу после окончания проигрывания bohdantheone Общие вопросы Javascript 7 03.12.2011 06:59
Переменная дата окончания акции Axios Элементы интерфейса 10 25.05.2011 16:24