innerText или textContent
Добрый день, подскажите пожалуйста какое свойство лучше использовать для доступа к значениям ячеек таблицы? Оба работают одинаково, на первый взгляд, но в чем их отличие?
|
textContent отсутствует в IE8-
свойство innerText не описано в спецификации (однако возможно в будущем это изменится), его нет в FireFox, и поведение отличается тем, что все <br> конвертируются в конец строки. |
Цитата:
|
День добрый... столкнулся с проблемой...
Есть код: <SMALL> <BR>Состояние обновления<br> <B>Данные обновлены <br>21 ч. 58 мин. назад.</B> </SMALL> Хочу вытащить текст... Делаю: var textTMP = document.getElementsByTagName('SMALL')[0].innerHTML; alert(textTMP); выдает: "<BR>Состояние обновления<br> <B>Данные обновлены <br>21 ч. 58 мин. назад.</B>" Делаю: var textTMP = document.getElementsByTagName('SMALL')[0].innerText; или var textTMP = document.getElementsByTagName('SMALL')[0].textContent; Выдает: "undefined" Браузер Мозила |
Согласно этой таблице, в Fifefox это свойство точно есть начиная с третьей версии.
<!DOCTYPE html> <SMALL> <BR>Состояние обновления<br> <B>Данные обновлены <br>21 ч. 58 мин. назад.</B> </SMALL> <script> var textTMP = document.getElementsByTagName('SMALL')[0].textContent; alert(textTMP); </script> |
innerText в разы быстрее обновляет текстовые узлы чем textContent и innerHTML
|
Цитата:
если важна скорость - попробуй ещё такой вариант: var fc = node.firstChild; (fc ? (fc.data = "text") : node.appendChild(document.createTextNode("text")); это предполагает, что кроме текста никаких элементов в ячейках не будет. |
Цитата:
http://jsperf.com/innertext-vs-textcontent-complette браузер Chrome 29.0.1547.66 |
Цитата:
|
Цитата:
td.firstChild.data = "new value"; где td - ссылка на ячейку таблицы, содержащую текст. |
Часовой пояс GMT +3, время: 10:37. |