Показать сообщение отдельно
  #11 (permalink)  
Старый 07.09.2013, 06:44
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Яростный Меч
насчет innerHTML - понятно почему, а textContent по идее должен работать так же.
Поковырялся в исходниках WebKit. Оказывается при установке textContent все дочерние элементы удаляются и создается новая текстовая нода, а при установке innerText если элемент содержит одну текстовую ноду, то просто устанавливается новое содержимое для нее.

Наглядно:
var container = document.createElement('div');
var childTextNode = container.appendChild(document.createTextNode('111'));
container.innerText = '222';
alert([childTextNode.data, childTextNode === container.firstChild]); // выдаст 222, а не 111
container.textContent = '333'
alert([childTextNode.data, childTextNode === container.firstChild]); // выдаст 222, false


Если текст будет содержать переносы или изначально нода будет содержать более одной ноды, то тесты могут дать другие результаты.
Ответить с цитированием