Text nodes should be updated with `nodeValue`

Text nodes do not necessarily support `innerText` or `textContent` in
all browsers. The most correct and cross-platform compatible way is by
using the `nodeValue` attribute.