document.selection.
Однако объект TextRange, возвращаемый IE, не соответствует Firefox / WebKit / W3, и определение точных положений начальной и конечной точек очень расстраивает. В зависимости от того, что именно вы делаете с диапазоном, вы можете получить что-то с помощью range.parentElement (), range.inRange () или range.compareEndPoints (). Для текстовых редакторов вы обычно используете потрясающе уродливый интерфейс range.execCommand ().
Реализация IE Range настолько странна и отличается от модели Mozilla / Webkit / W3, что вы обычно получаете совершенно разные пути кода для всего, что связано с выбором между ними.