Range - фрагмент (діапазон) виділення.
obRange = document.createRange();
//конструктор
obRange = new Range()
obRange - зміна яка отримує об'єкт Range.
document - об'єкт document.
createRange() - метод createRange() об'єкту document який повертає об'єкт Range.
Range об'єкт який представляє собою фрагмент (діапазон) виділення.
При цьому саме виділення (об'єкт Selection) може містити декілька фрагментів (об'єктів Range).
У Internet Explorer до версії 9 об'єкт Range не підтримується, а натомість є об'єкт TextRange.
Range містить початкову позицію і кінцеву.
Зверніть увагу що при створені об'єкту Range і задані початкової і кінцевої точки сам фрагмент тексту НЕ буде виділений у браузері. Щоб фрагмент був виділений у браузері його необхідно додати до об'єкту Selection методом addRange().
Приклад виділення усіх тегів
<p>на сторінці:
var rang=[], masP=document.getElementsByTagName("p"), sel=getSelection();
for(i=0; i<masP.length; i++){
rang[i]=document.createRange();
rang[i].selectNode(masP[i]);
sel.addRange(rang[i]);
}