<html>
<head>
<title> New Document </title>
<meta http-equiv="content-type" content="text/html;charset=gb2312">
</head>
<style type="text/css">
table{
border:#0066FF 1px solid;
}
table td{
border:#0066FF 1px solid;
background-color:#00ccFF;
}
table td div{
background-color:#66FFcc;
display:none;
}
tabletd a:link,table,td a:visited{
text=decoration:none;
color:#0099DD;
}
</style>
<script type="text/javascript">
function list(aNode)
{
var aNode = aNode;
var tdNode = aNode.parentNode;
var divNode = tdNode.getElementsByTagName("div")[0];
alert(divNode);
var tabNode = tabNode.getElementsByTagName("table")[0];
alert(tabNade);
var divNodes = tabNode.getElementsByTagName("div");
alert(divNodes[0]);
for(var x = 0;x<divNodes.length;x++)
{
if(divNode[x] == divNode)
{
if(divNode.className == "open")
{
divNode.className = "close";
}
else
{
divNode.className = "open";
}
}
else{
divNodes[x].className="close";
}
}
alert(aNode.name);
}
</script>
<body>
<table>
<tr>
<td>
<a href="javascript:void(0)" onclick = "list(this)">好友菜单列表</a>
<div>
中国万岁万岁<br/>
中国万岁万岁<br/>
中国万岁万岁<br/>
中国万岁万岁<br/>
</div>
</td>
</tr>
<tr>
<td>
<a href="javascript:void(0)" onclick = "list(this)">好友菜单列表</a>
<div>
中国万岁万岁<br/>
中国万岁万岁<br/>
中国万岁万岁<br/>
中国万岁万岁<br/>
</div>
</td>
</tr>
<tr>
<td>
<a href="javascript:void(0)" onclick = "list(this)">好友菜单列表</a>
<div>
中国万岁万岁<br/>
中国万岁万岁<br/>
中国万岁万岁<br/>
中国万岁万岁<br/>
</div>
</td>
</tr>
<tr>
<td>
<a href="javascript:void(0)" onclick = "list(this)">好友菜单列表</a>
<div>
中国万岁万岁<br/>
中国万岁万岁<br/>
中国万岁万岁<br/>
中国万岁万岁<br/>
</div>
</td>
</tr>
</table>
</body>
</html>
获取getElementById或者bytagname的时候总是显示object不是标签名称,起了id名称,也获取不到标签对象。
如果没有笔误的话,通常是不会出现这种情况的,应该仔细检查下自己写的代码,关键字是否有误
定义和用法
getElementsByTagName() 方法可返回带有指定标签名的对象的集合。
语法
document.getElementsByTagName(tagname)
说明
getElementsByTagName() 方法返回元素的顺序是它们在文档中的顺序。
如果把特殊字符串 "*" 传递给 getElementsByTagName() 方法,它将返回文档中所有元素的列表,元素排列的顺序就是它们在文档中的顺序。
提示和注释
注释:传递给 getElementsByTagName() 方法的字符串可以不区分大小写。
<html>你那是标签,我要的是标签对象,正常的他应该是显示div或者tr或者td吧!!而且重点是如果加上你说的tagNAme的话显示的是undefined
追答var divNode = tdNode.getElementsByTagName("div")[0];
alert(divNode); //显示结果是[object]
alert(divNode.tagName); //显示结果是div
注意大小写
tagNAme 错
tagName 对
都是小写的说,没有大写,大写就报错啦,我那只是说有这个属性而已
追答呵呵,那就算我白说了。反正我测试后显示的是DIV
追问是吧,所以我说是不是我的环境有问题,如果有问题要如何设置?? 谢谢了
追答我就不理解为什么都是小写?
alert(divNode.tagName);不行吗?
为什么 var divNode = tdNode.getElementsByTagName("div")[0]; 又可以?
别跟我说 B T N 这些不是大写字母
呵呵,这就是语法,我也不是很清楚,谢谢啦!!!
追答看过另一位网友的回答,我才猛然发现你的代码中有好多拼写错误哦,程序是严谨的,差一个字母都不行的。你先把这个搞好了再说吧。
追问对啊,自己用记事本敲出来的,所以。。。。。。。哈哈哈 谢谢了哈!!!