-
- All Implemented Interfaces:
-
android.os.Parcelable,org.readium.r2.shared.JSONable
public final class DomRange implements JSONable, Parcelable
This construct enables a serializable representation of a DOM Range.
In a DOM Range object, the startContainer + startOffset tuple represents the start boundary point. Similarly, the the endContainer + endOffset tuple represents the end boundary point. In both cases, the start/endContainer property is a pointer to either a DOM text node, or a DOM element (this typically depends on the mechanism from which the DOM Range instance originates, for example when obtaining the currently-selected document fragment using the
window.selectionAPI). In the case of a DOM text node, the start/endOffset corresponds to a position within the character data. In the case of a DOM element node, the start/endOffset corresponds to a position that designates a child text node.Note that end field is optional. When only the start field is specified, the domRange object represents a "collapsed" range that has identical start and end boundary points.
https://github.com/readium/architecture/blob/master/models/locators/extensions/html.md#the-domrange-object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public final classDomRange.PointA serializable representation of a boundary point in a DOM Range.
The cssSelector field always references a DOM element. If the original DOM Range start/endContainer property references a DOM text node, the textNodeIndex field is used to complement the CSS Selector; thereby providing a pointer to a child DOM text node; and charOffset is used to tell a position within the character data of that DOM text node (just as the DOM Range start/endOffset does). If the original DOM Range start/endContainer property references a DOM Element, then the textNodeIndex field is used to designate the child Text node (just as the DOM Range start/endOffset does), and the optional charOffset field is not used (as there is no explicit position within the character data of the text node).
https://github.com/readium/architecture/blob/master/models/locators/extensions/html.md#the-start-and-end-object
public classDomRange.Companion
-
Field Summary
Fields Modifier and Type Field Description private final DomRange.Pointstartprivate final DomRange.Pointend
-
Constructor Summary
Constructors Constructor Description DomRange(DomRange.Point start, DomRange.Point end)
-
Method Summary
Modifier and Type Method Description final DomRange.PointgetStart()final DomRange.PointgetEnd()JSONObjecttoJSON()Serializes the object to its JSON representation. -
-
Constructor Detail
-
DomRange
DomRange(DomRange.Point start, DomRange.Point end)
- Parameters:
start- A serializable representation of the "start" boundary point of the DOM Range.end- A serializable representation of the "end" boundary point of the DOM Range.
-
-
Method Detail
-
getStart
final DomRange.Point getStart()
-
getEnd
final DomRange.Point getEnd()
-
toJSON
JSONObject toJSON()
Serializes the object to its JSON representation.
-
-
-
-