|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
18.02.2013, 23:06 | #1 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
ошибка в firstChild.style
Всем привет.
Такой вопрос. есть вот такой скрипт. Код HTML:
window.onload = function(){ var divs = document.getElementsByTagName('div'); for(var i=0; i < divs.length; i++){ divs[i].onclick = go; } } function go(){ this.firstChild.nodeValue = 'text'; this.firstChild.style.marginLeft = "25px"; } Код HTML:
<div class="testBox"> <p class="balon">test 1</p> </div> <div class="testBox"> <p class="balon">test 2</p> </div> <div class="testBox"> <p class="balon">test 3</p> </div> Проблема вот в чём. При клике по ДИВУ идёт присваивание this.firstChild.nodeValue = 'text'; Должен исчезать старый текст и присваиваться новый. А происходит только добавление нового куска и причём перед старым. Получается что он его рассматривает как отдельный узел ? но почему ? А главная проблема, вот в этом this.firstChild.style.marginLeft = "25px"; Браузер ругается и сообщает следующее. Uncaught TypeError: Cannot set property 'marginLeft' of undefined Не могу понять, как одно свойство я могу изменить а другое нет ?
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
|
19.02.2013, 09:28 | #2 |
Раздолбайских Дел
Старожил
Регистрация: 22.05.2009
Сообщений: 3,828
|
Потому что первый элемент — это пустой текстовый узел, который собственно и наполняется текстом "text". Стилей он не имеет.
Поиск идет по всем узлам (комментарии, текст), а не только по тэгам. Код:
Код:
Alar, верни репу!
|
23.02.2013, 22:34 | #3 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
Спасибо ))) теперь понятно
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Metro style в Windows 8 | Liberum | HTML и CSS | 15 | 18.06.2012 23:06 |
Ошибка error C2447: missing function header (old-style formal list?) | AnryFlame | Visual C++ | 9 | 11.04.2012 14:40 |
ComboBox1 Style | Shouldercannon | Общие вопросы Delphi | 5 | 12.01.2012 16:39 |
Поле style | LordPingvin | HTML и CSS | 4 | 03.05.2011 15:56 |
Canvas.Font.Style := Label.Font.Style; не выходит | ArtGrek | Общие вопросы Delphi | 3 | 23.02.2011 19:55 |