DOM GetElementsByTagName Проблема - PullRequest
       23

DOM GetElementsByTagName Проблема

2 голосов
/ 26 сентября 2011

Я только начинаю изучать JavaScript, и я только что достиг раздела DOM моего курса.

У меня есть страница с 10 тегами, и я создал следующий JavaScript, чтобы сообщить мне, сколько яhave.

<script type="text/javascript">
var myLinks = document.getElementsByTagName("a");
console.log("We have ", myLinks.length ," many links on the page");
</script>

Однако в консоли он сообщает об этом:

У нас 0 ссылок на странице

Это неверно, поскольку имеется 10 ссылок, 9в разделе навигации на сайте и 1 в нижнем колонтитуле.

Если кто-то может сказать мне, что я делаю неправильно, это было бы здорово.

Спасибо

Ответы [ 2 ]

6 голосов
/ 26 сентября 2011

Вам нужно обернуть это в обработчик onload, потому что в момент выполнения DOM загружен не полностью:

<script type="text/javascript">
  window.onload = function() {
    var myLinks = document.getElementsByTagName("a");
    console.log("We have ", myLinks.length ," many links on the page");
  };
</script>
2 голосов
/ 26 сентября 2011

Поместите скрипт в конец вашего документа (перед тем как закрыть </body>):

...