innerText is a proprietary IE thing. The W3C defines textContent as the official property.
An easy way is to exploit the ||
logical operator and its short circuiting nature, as well as JavaScript returning the last evaluated value in a condition (most times the truthy operand).
var body = document.body,
text = body.textContent || body.innerText;
jsFiddle.
(Note in the fiddle I checked for the innerText
first. This was only because most people on here do not use IE. IRL, check for textContent
first, and fallback to innerText
.)