Задача по 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';
}
}
Скорей всего, я просто не знаю как применить код, прошу помочь! |
Цитата:
|
Создал кнопку:
<button onclick="A()">AAAA</button> Ничего не происходит! |
if ( /(?:^| +)hilite(?: +|$)/i.test( all[ i ].className ) ) {
all[ i ].style.display = 'none';
}
|
devote,
Цитата:
|
Цитата:
|
Вот полный код страницы:
<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>
При нажатии на кнопку выводится следующее сообщение. ![]() Но ничего не работает, классы какими были такими и остались. В чем моя ошибка?? |
ошибка твоя в том что в элементе <div id="body"> у тебя кроме текста больше ничего нет... А ты пытаешься в нем искать другие теги.
|
Благодарю, devote!
|
| Часовой пояс GMT +3, время: 15:41. |