I\'ve been working with selection/range objects, and because to the incredible amount of inconsistencies between browsers for specific selection/range stuff (even more than the
I've written a new range/selection library called Rangy that is similar in concept to IERange but goes quite a lot further. The core is pretty much complete and currently available to download. I'm currently bugfixing and documenting it and it should be only be a few weeks before a full release.
UPDATE 31 August 2011
Rangy is now stable and at version 1.2 (downloads page).
fieldselection is a very usable jquery plugin for selection/range manipulation.
(Made an answer by request ;)
Take a look at IERange:
IERange is a feature-complete implementation of W3C DOM Ranges for Internet Explorer, allowing users to write one cross-browser version of their range manipulation code.
Supports Range APIs:
document.createRange()
startContainer
, startOffset
, endContainer
, endOffset
, commonAncestorContainer
, collapsed
setStart()
, setEnd()
, setStartBefore()
, setStartAfter()
, setEndBefore()
, setEndAfter()
, selectNode()
, selectNodeContents()
, collapse()
insertNode()
, surroundContents()
extractContents()
, cloneContents()
, deleteContents()
compareBoundaryPoints()
, cloneRange()
, createContextualFragment()
, toString()
Supports Selection APIs:
window.getSelection()
addRange()
, removeAllRanges()
, getRangeAt()
, toString()