изучаю dom
html имеет 2 потомка head и body.
alert(document.body.parentNode) дает html. почему alert(document.head.parentNode) не дает html. |
А в каком браузере? В Chrome дает:
alert( document.head.parentNode ); |
в FF дает ошибка: document.head is undefined
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>О лосях</title>
<script>
alert(document.body.firstChild)
</script>
</head>
<body>
Правда о лосях.
<ol>
<li>
Лось - животное хитрое
</li>
<li>
.. И коварное
</li>
</ol>
</body>
</html>
еще первый ребенок у body должен быть ol ничего не дает |
Это совсем другое. Просто у document нет свойства .head. Используй другой способ получить его:
if( !document.head ) document.head = document.getElementsByTagName( "head" )[ 0 ] alert( document.head.parentNode ); |
Цитата:
Цитата:
|
а почему условие проверяется через if?, я видела (?: )
и второй вопрос не могу разобраться с this. Написано, что это указатель и зависит от контекста. Провожу аналогию: указатель, это на вокзале указывает выход в город, на 5,6 путь, в камеры хранения ит.д. Контекст это например коса у девочки, коса косит траву, коса в море, это зависимо от контекста. с чем это можно сравнить, чтобы понять смысл? |
да дает ошибку, хотела отредактировать у меня не получилось
|
Цитата:
ЭТО по-умолчанию - window, глобальный объект.
//говорит о контексте.
function a(){alert(this)}
a(); // window.
var myObj = {};
a.call( myObj )// сменили переменную this на этот пустой объект
// по умолчанию ?
a.call( null ); // window
a.call( undefined );
|
а если я уберу текст "Правда о лосях", будет 1 ребенком ol?
большое Вам спасибо я добавлю Вам 1 |
| Часовой пояс GMT +3, время: 23:53. |