Fix IE9 issue with innerHTML on plaintext elements

Setting innerHTML on plaintext elements creates non Text children.
Check if the element is a plaintext elemend and if so use textContent
instead.