Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.01.2012, 19:13
Новичок на форуме
Отправить личное сообщение для Yan_by Посмотреть профиль Найти все сообщения от Yan_by
 
Регистрация: 11.01.2012
Сообщений: 8

Задача по DOM
Условие:
- реализовать проход по всем элементам-потомкам элемента, у которого значение
ID равно ‘body’;
- обнаружить все элементы, у которых значение аргумента class равно 'hilite' и вывести их в окне сообщения;
- скрыть все элементы, соответствующие этому условию.

Есть функция, но ничего не работает:

function A()
        {
                var all = document.getElementById("body").getElementsByTagName("*");
                
                for ( var i = 0; i < all.length; i++ ) 
                {
                
                        if ( all[i].className == 'hilite' ) 
                        all[i].style.display = 'none'; 
                }
        }


Скорей всего, я просто не знаю как применить код, прошу помочь!
Ответить с цитированием
  #2 (permalink)  
Старый 13.01.2012, 19:17
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от Yan_by
Скорей всего, я просто не знаю как применить код
просто вызвать функцию A();
Ответить с цитированием
  #3 (permalink)  
Старый 13.01.2012, 19:22
Новичок на форуме
Отправить личное сообщение для Yan_by Посмотреть профиль Найти все сообщения от Yan_by
 
Регистрация: 11.01.2012
Сообщений: 8

Создал кнопку:
<button onclick="A()">AAAA</button>


Ничего не происходит!
Ответить с цитированием
  #4 (permalink)  
Старый 13.01.2012, 19:26
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

if ( /(?:^| +)hilite(?: +|$)/i.test( all[ i ].className ) ) {
    all[ i ].style.display = 'none';
}
Ответить с цитированием
  #5 (permalink)  
Старый 13.01.2012, 19:37
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,589

devote,
Цитата:
значение аргумента class равно 'hilite'
__________________
29375, 35
Ответить с цитированием
  #6 (permalink)  
Старый 13.01.2012, 19:38
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от Aetae Посмотреть сообщение
devote,
та, хуже не будет
Ответить с цитированием
  #7 (permalink)  
Старый 13.01.2012, 19:43
Новичок на форуме
Отправить личное сообщение для Yan_by Посмотреть профиль Найти все сообщения от Yan_by
 
Регистрация: 11.01.2012
Сообщений: 8

Вот полный код страницы:

<html>
<head>
<title>confirm</title>

<script language="javascript">
	
function A()
	{
		var all = document.getElementById("body").getElementsByTagName("*");
		for ( var i = 0; i < all.length; i++ ) 
		{
			if ( /(?:^| +)hilite(?: +|$)/i.test( all[ i ].className ) ) 
			{
				all[i].style.display = 'none';
			}
		}
		alert(all);
	}
	</script>
</head>

<body>

<button onclick="A()">AAAA</button>

<div id="body"> Этот элемент body.</div>
  
<div class="hilite"> Этот элемент hilite.</div>
  
<p class="hilite">Для исключения </p>
	
<button onclick="A()">A</button>
	
</body>
</html>


При нажатии на кнопку выводится следующее сообщение.



Но ничего не работает, классы какими были такими и остались. В чем моя ошибка??

Последний раз редактировалось Yan_by, 13.01.2012 в 19:45.
Ответить с цитированием
  #8 (permalink)  
Старый 13.01.2012, 19:52
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

ошибка твоя в том что в элементе <div id="body"> у тебя кроме текста больше ничего нет... А ты пытаешься в нем искать другие теги.
Ответить с цитированием
  #9 (permalink)  
Старый 13.01.2012, 20:02
Новичок на форуме
Отправить личное сообщение для Yan_by Посмотреть профиль Найти все сообщения от Yan_by
 
Регистрация: 11.01.2012
Сообщений: 8

Благодарю, devote!
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Получить список ВСЕХ элементов DOM Почемучкин Events/DOM/Window 7 16.04.2012 11:33
Новый элемент отсутствует в DOM модели StrSprut jQuery 4 19.09.2011 12:50
Как в браузерах реализуются функции DOM (например createElement) iamme Общие вопросы Javascript 7 02.09.2011 20:26
Как добавить элемент в XML через DOM используя PHP? bayah Серверные языки и технологии 6 11.08.2010 13:33
Работа с DOM на стороне сервера AlexAndreev Серверные языки и технологии 7 27.05.2009 21:39