Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Работа с DOM (https://javascript.ru/forum/misc/30665-rabota-s-dom.html)

PashPP 11.08.2012 16:36

Работа с DOM
 
Почему не работает:
function gg() {
  var menu = document.getElementById('topbarvn');
  var bottoms = menu.getElementsByTagName('ul')[0];
  alert(menu.bottoms.innerHTML)
}

Зато нормально пашет:
function gg() {
  var menu = document.getElementById('topbarvn');
  var bottoms = menu.getElementsByTagName('ul')[0];
  alert(menu.getElementsByTagName('ul')[0].innerHTML)
}

<div id="topbarvn">
	<ul>
		<li onclick="gg()"><a href="#1">Menu1</a></li>
		<li onclick="gg()"><a href="#2">MENU2bigbigbig</a></li>
		<li><a href="#3">MENU3</a></li>
		<li><a href="#4">Menu4</a></li>
		<li><a href="#5">MENU5</a></li>
	</ul>
</div>

melky 11.08.2012 16:41

А почему оно должно работать?)

Deff 11.08.2012 16:44

PashPP,
Где то символ на кирилице
<div id="topbarvn">
	<ul>
		<li onclick="gg()"><a href="#1">Menu1</a></li>
		<li onclick="gg()"><a href="#2">MENU2bigbigbig</a></li>
		<li><a href="#3">MENU3</a></li>
		<li><a href="#4">Menu4</a></li>
		<li><a href="#5">MENU5</a></li>
	</ul>
</div>

<script type="text/javascript">
function gg() {
  var menu = document.getElementById('topbarvn');
  var bottoms = menu.getElementsByTagName('ul')[0]
  alert(bottoms.innerHTML)
}gg()
</script>

PashPP 11.08.2012 16:45

melky,
А почему нет? Чисто с логической стороны не вижу противоречивости. А как оно там внутри не знаю уже.

PashPP 11.08.2012 16:46

Deff,
Вот уж странная вещь, спасибо

Aetae 11.08.2012 16:56

Цитата:

menu.bottoms.innerHTML
bottoms - не свойство menu и нигде как оное не объявлено.
bottoms - отделяная переменная.
Потому и не работает.

melky 11.08.2012 17:16

Цитата:

Сообщение от Deff
PashPP,
Где то символ на кирилице

причём тут символ на кириллице, если в коде
// ...
alert(menu.bottoms.innerHTML)

попытка взять свойство bottom у элемента menu возвратит undefined, а попытка взять свойство innerHTML у undefined породит ошибку?

Цитата:

Сообщение от PashPP (Сообщение 196671)
melky,
А почему нет? Чисто с логической стороны не вижу противоречивости. А как оно там внутри не знаю уже.

где "внутри" ?


Часовой пояс GMT +3, время: 01:42.