我无法在javascript中隐藏我的p标签

时间:2014-03-23 07:21:07

标签: javascript html css

我不知道我在哪里遇到错误但是当我运行这个脚本时它在firebug中说未定义。没有告诉我什么是undefined。这是我的javascript。

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

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

3 个答案:

答案 0 :(得分: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>

答案 1 :(得分:2)

您想要getElementsByTagName

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

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

答案 2 :(得分:1)

要使用的正确JS声明是

var elements = document.getElementByTagName("p")

而不是

var elements = document.getElementByName("p")

因为后者会查找名为p的值(e.g. <img name="p" /> or <map name="p">)的任何元素,而不是返回<p>元素。