Вот так:
jsfiddle.net/97dw6382/2
Вкратце, в качестве диапазона надо использовать номер DOM элемента, а не текстовое смещение.
Т.е. когда там текст, то это текстовое смещение, но если встречается любой dom элемент, тогда надо указывать его номер.
Тут есть более подробное описание:
stackoverflow.com/a/6939886