我不知道我在哪里遇到错误但是当我运行这个脚本时它在firebug中说未定义。没有告诉我什么是undefined。这是我的javascript。
var elements = document.getElementsByName("p");
var length = elements.length;
for (var i = 0; i < length; i++)
{
elements[i].style.display='none';
}
答案 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>
元素。