Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.12.2013, 00:44
Интересующийся
Отправить личное сообщение для Зыкин Илья Посмотреть профиль Найти все сообщения от Зыкин Илья
 
Регистрация: 11.08.2013
Сообщений: 17

Проблемы с функцией
Возможно я и не в ту ветку пишу, но хз уже.
Вообщем взялся помочь человеку, самому интересно стало.

Собственно проблема в том, что первый раз по нажатии на кнопку условие срабатывает, а второй раз при нажатии на кнопку нет.

То ли глаз так замылился, то ли недопустимое что то пишу.
Вот само творение(приложу весь код):

<html>
    <head>
        <title>Приветствие 2014</title>
        <meta charset="UTF-8">
        <style type="text/css" rel="StyleSheet">
            .gblock{width:350px; font-size:14px;border:solid 1px #000000;font-family: verdana, sans;}
            .gtitle{background:#284352; color:#ffffff;}
            #tb{width:348px;padding:2px;}
            .texttyt{background:red;width:342px; font-size:14px; padding:2px; color:#ffffff;}
						
						.block {display: none;}
        </style>
        <script>
					function changeContent() {
						var allBlock = document.getElementById('tb').getElementsByClassName('block');
						var loadImg = document.getElementById('load');
						for (i = 0; i < allBlock.length-1; i++) {
						
							if (allBlock[i].style.display == 'block' && i < (allBlock.length-1)) {
								allBlock[i].style.display = 'none';
								loadImg.style.display = 'block';
								setTimeout(function() {
									loadImg.style.display = 'none';
									allBlock[i+1].style.display = 'block';
								}, 2000);
								return;
								
							} else if (allBlock[length-1].style.display == 'block') {
								allBlock[length-1].style.display = 'none';
								loadImg.style.display = 'block';
								setTimeout(function() {
									loadImg.style.display = 'none';
									allBlock[0].style.display = 'block';
								}, 2000);
								return;
							}
						}
					}
        </script>
    </head>
    <body>
			<div class="gblock">
				<div class="gtitle">
					Блок с приветсвием
				</div>
				<div>
					 <center><input type="button" id="button" onclick="changeContent()" value="Нажми"></center>
				</div>
				<div id="tb">
					<center><img id="load" style="display: none;" src="http://javascript.ru/cat/list/event.gif"></center><br/>
					
					<div style="display: block;" class="block">
					1
					</div>
					<div class="block">
					2
					</div>
					<div class="block">
					3
					</div>
					
				</div>
			</div>  
    </body>
</html>

Критика приветствуется)

Последний раз редактировалось Зыкин Илья, 23.12.2013 в 00:47.
Ответить с цитированием
  #2 (permalink)  
Старый 23.12.2013, 01:02
Профессор
Отправить личное сообщение для BallsShaped Посмотреть профиль Найти все сообщения от BallsShaped
 
Регистрация: 14.09.2012
Сообщений: 162

В 28 строке
allBlock[length-1]
вместо, видимо
allBlock[allBlock.length-1]

Кстати, народ, window.length - это что, вообще, такое?
Ответить с цитированием
  #3 (permalink)  
Старый 23.12.2013, 02:18
Интересующийся
Отправить личное сообщение для Зыкин Илья Посмотреть профиль Найти все сообщения от Зыкин Илья
 
Регистрация: 11.08.2013
Сообщений: 17

Ну точно, глаз замылился))

Спасибо большое)
Ответить с цитированием
  #4 (permalink)  
Старый 23.12.2013, 04:36
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

http://learn.javascript.ru/play/c9C0k
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблемы со слайдером. Shupamen Работа 1 15.12.2013 00:12
Решение проблемы с отображением элементов на странице mozyr Javascript под браузер 17 13.01.2012 02:34
Проблемы с функцией avaVusal ExtJS 0 22.04.2011 15:53
глюк форума Gvozd Сайт Javascript.ru 11 18.03.2009 14:37
Drug&Drop + всплывание события = проблемы =(( _NoName_ Events/DOM/Window 4 05.03.2009 17:47