Я не могу скрыть свои теги p в javasctript

0

Я не знаю, где у меня ошибка, но когда я запускаю этот скрипт, он говорит undefined в firebug.Not сказать мне, что не определено. Вот мой javascript.

var elements = document.getElementsByName("p");
var length = elements.length;

for (var i = 0; i < length; i++)
{
    elements[i].style.display='none';
}
  • 0
    Я думаю, вы запускаете его до загрузки HTML. Попробуйте сохранить свой JavaScript-код перед </ body>, функция должна быть getElementsByTagName вместо getElementsByName
  • 1
    Я верю, что это document.getElementsByTagName("p"); в первой строке.
Теги:

3 ответа

4
Лучший ответ

Я думаю, вы хотите getElementsByTagName:

var elements = document.getElementsByTagName("p");
var length = elements.length;

for (var i = 0; i < length; i++)
{
    elements[i].style.display='none';
}

document.getElementsByName("p"); возвращают элементы, которые имеют name атрибута p, такие как:

<span name="p"></span>
2

Вы хотите getElementsByTagName

var elements = document.getElementsByTagName("p");
var length = elements.length;

for (var i = 0; i < length; i++)
{
    elements[i].style.display='none';
}
1

Правильная декларация JS для использования будет

var elements = document.getElementByTagName("p")

скорее, чем

var elements = document.getElementByName("p")

потому что последний ищет какой-либо элемент со значением p для имени (eg <img name="p"/> or <map name="p">) вместо возвращения <p> элементов.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню