изучаю 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 |
нет, будет текст - перенос строки
|
да дает ошибку ошибка: syntax error
|
Цитата:
еще мне не понятно почему Body еще не существует а что нужно сделать, чтобы первым ребенком был ol? и что ему надо чтобы Body существовало? |
<body><ol> тогда будет первым. body будет существовать,если поместить скрипт ниже body :) или вызывать функцию взаимодействия с dom по загрузке страницы |
document.body is null
file:///C:/Documents%20and%20Settings/SY/%D0%A0%D0%B0%D0%B1%D0%BE%D1%87%D0%B8%D0%B9%20%D1%8 1%D1%82%D0%BE%D0%BB/pervaya_rabota/poisk_dom/%D0%9A%D0%BE%D0%BF%D0%B8%D1%8F%20(2)%20los.html Line 6 Firebug дает ошибку, но в чем ошибка, я в этом ничего не понимаю, где почитать подскажите плз. Еще я не понимаю, что означает [object Object] |
Да, ошибка убралась, когда перенесла скрипт ниже Body.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>О лосях</title>
</head>
<body><ol>
<li>
Лось - животное хитрое
</li>
<li>
.. И коварное
</li>
</ol>
<script>
alert(document.body.firstChild)
</script>
</body>
</html>
когда запустила отсюда получилась ошибка ошибка: syntax error а с чем это связано? |
йцукен енгшщ
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>О лосях</title>
</head>
<script>
window.onload = alert(document.body.firstChild)
</script>
<body><ol>
<li>
Лось - животное хитрое
</li>
<li>
.. И коварное
</li>
</ol>
</body>
</html>
вызывать функцию взаимодействия с dom по загрузке страницы я правильно поняла или нет? __________________ |
<html>
<head>
<title>О лосях</title>
<script>
window.onload = function () {
alert(document.body.firstChild);
}
</script>
</head>
<body>
<ol>
<li>
Лось - животное хитрое
</li>
<li>
.. И коварное
</li>
</ol>
</body>
</html>
|
Верно, когда страница полностью загрузится сработает событие onLoad и вызовет функцию, в функции же происходит работа с DOM.
|
спасибо, значит я сделала не правильно, уже исправила.
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>О лосях</title>
</head>
<script>
window.onload = function () {
alert(document.body.firstChild);
alert(document.ol.firstChild);
}
</script>
<body><ol><li>
Лось - животное хитрое
</li>
<li>
.. И коварное
</li></ol></body>
</html>
скажите плз первый ребенок ol так не появляется, а должен появиться li. что ему надо? |
Недавно изучаю великий и могучий javascript, но, по-моему, для того чтобы работало надо найти элемент в дереве:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>О лосях</title>
<script>
window.onload = function () {
var ol = document.getElementById('id');
alert(document.body.firstChild);
alert(ol.firstChild);
}
</script>
</head>
<body><ol id='id'><li>
Лось - животное хитрое
</li>
<li>
.. И коварное
</li></ol>
</body>
</html>
И Ольга, заключайте код html в html теги, а не JS, а то так javascript не будет работать здесь. |
alert( document.head.parentNode );
да, в хроме дает HTML |
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>О лосях</title>
<script>
var newDiv = document.createElement('div')
newDiv.className = 'my-class'
newDiv.id = 'my-id'
newDiv.style.backgroundColor = 'red'
newDiv.innerHTML = 'Привет, мир!'
</script>
</head>
<body>
Правда о лосях.
<ol>
<li>
Лось - животное хитрое
</li>
<li>
.. И коварное
</li>
</ol>
</body>
</html>
хочу создать новый элемент, что ему надо чтоб создался DIV. |
documen.body.appendChild(newDiv);
|
Цитата:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>О лосях</title>
</head>
<body>
Правда о лосях.
<ol>
<li>
Лось - животное хитрое
</li>
<li>
.. И коварное
</li>
</ol>
<script>
var newDiv = document.createElement('div')
newDiv.className = 'my-class'
newDiv.id = 'my-id'
newDiv.style.backgroundColor = 'red'
newDiv.innerHTML = 'Привет, мир!'
documen.body.appendChild(newDiv);
</script>
</body>
</html>
поставила, но наверное еще что-то надо, нигде не появилось "привет мир" |
Строка N26 ошибка нужно писать document а у Вас documen.
Учитесь пользоваться отладчиками, в каждом браузере есть вызываются быстрой клавишей F12. |
Magneto,
спасибо большое, но 1 чего-то Вам не ставится, позже поставлю |
| Часовой пояс GMT +3, время: 09:33. |