首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

关于用getElementsByTagName弹出[object HTMLCollection]的有关问题

2012-06-29 
关于用getElementsByTagName弹出[object HTMLCollection]的问题HTML code!DOCTYPE htmlhtmlheadtit

关于用getElementsByTagName弹出[object HTMLCollection]的问题

HTML code
<!DOCTYPE html><html><head>    <title></title>    <script type="text/javascript">        var a = document.getElementsByTagName('a');        alert(a);    </script></head><body><a href="#"></a><a href="#"></a><a href="#"></a><a href="#"></a></body></html>

不是应该获取所有a标签的一个列表吗?为什么会弹出object HTMLCollection呢?而且我用alert(a[0])弹出的是undefined?

[解决办法]
代码顺序的问题,JS代码位于目标元素之前,代码被执行时目标元素还没有加载到DOM树中。
HTML code
<!DOCTYPE html><html><head><title></title></head><body><a href="#">DEMO</a><a href="#"></a><a href="#"></a><a href="#"></a> <script type="text/javascript">var a = document.getElementsByTagName('a');alert(a[0].innerHTML);</script></body></html>
[解决办法]
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<a href="#">1</a>
<a href="#">2</a>
<a href="#">3</a>
<a href="#">4</a>
<script type="text/javascript">
var a = document.getElementsByTagName('a');
alert(a[0].innerHTML);
</script>
</body>
</html>



script放dom之后,或window.onload里

热点排行