Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.04.2017, 18:42
Интересующийся
Отправить личное сообщение для losapwild Посмотреть профиль Найти все сообщения от losapwild
 
Регистрация: 22.04.2017
Сообщений: 25

Замена окончания + счетчик
Здравствуйте. Есть обратный отсчет 9 -> 1, а рядом слово "человек"

9 человек, 5 человек, а когда число 4-2 нужно чтобы было "человека"

т.е "6 человек - 5 человек - 4 человекА - 3 человекА - 2 человекА - 1 человек"

Вот код счетчика, который сейчас

$(function(){
			var num = 9,
					output = $('#ress'),
					LS_allowed=('localStorage' in window),
					restart=1/60/60*10;//Convert 1 hour to 10 seconds
			
			if(LS_allowed){
				var save_time=parseInt(localStorage.getItem('timer-time'))||0;
				if(save_time+restart*60*60*10>=(new Date()).getTime())
					num=localStorage.getItem('timer-num')||num;
			};
			
			output.text(num);
			(function changeNum(){
				setTimeout(function(){
						if(num<=1) 
							return;
						
						output.text(--num);
						if(LS_allowed){
							localStorage.setItem('timer-num',num);
							localStorage.setItem('timer-time',(new Date()).getTime());
						};
						changeNum();
				},1000+(9-num)*1000);
			})();
});


Как работает, желательно сделать здесь же: http://jsfiddle.net/SCyWG/80/
Ответить с цитированием
  #2 (permalink)  
Старый 28.04.2017, 18:47
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

И в чем проблема проверить состояние счетчика чтобы понять добавлять А в конце или нет?
Ответить с цитированием
  #3 (permalink)  
Старый 28.04.2017, 18:49
Интересующийся
Отправить личное сообщение для losapwild Посмотреть профиль Найти все сообщения от losapwild
 
Регистрация: 22.04.2017
Сообщений: 25

я не знаю как это реализовать, поэтому спрашиваю
Ответить с цитированием
  #4 (permalink)  
Старый 28.04.2017, 19:06
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

.... человек<span id="ending"></span>

Строку 19 заменить на:

output.text(num--);
$('#ending').text(num > 1 && num < 5 ? 'а' : '');

Последний раз редактировалось laimas, 28.04.2017 в 19:44.
Ответить с цитированием
  #5 (permalink)  
Старый 30.04.2017, 13:20
Интересующийся
Отправить личное сообщение для losapwild Посмотреть профиль Найти все сообщения от losapwild
 
Регистрация: 22.04.2017
Сообщений: 25

"а" ставится, но при обновлении страницы цифра счетчика остается, а окончание "а" исчезает. Подскажите как сделать так, чтобы окончание тоже сохранялось в "localStorage.setItem"

Желательно готовый скрипт, спасибо большое!
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Замена тегов Kost-iv Events/DOM/Window 4 01.11.2015 17:12
Счетчик обратного времени (эпоха unix) skillful AJAX и COMET 0 07.07.2014 17:09
Счетчик обратного отсчета для сайта. Подскажите. ProstoVova Общие вопросы Javascript 2 12.04.2014 17:15
добавить счетчик в счетчик dimon76 Events/DOM/Window 1 28.06.2011 23:06
Помогите усовершенствовать счетчик fredrsf Элементы интерфейса 1 30.06.2010 15:38