diff --git a/dom.bs b/dom.bs index bb16cf551..a836aa42d 100644 --- a/dom.bs +++ b/dom.bs @@ -3621,6 +3621,7 @@ interface mixin NonDocumentTypeChildNode { }; Element includes NonDocumentTypeChildNode; CharacterData includes NonDocumentTypeChildNode; +Marker includes NonDocumentTypeChildNode;
@@ -4421,6 +4422,7 @@ interface Node : EventTarget { const unsigned short DOCUMENT_TYPE_NODE = 10; const unsigned short DOCUMENT_FRAGMENT_NODE = 11; const unsigned short NOTATION_NODE = 12; // legacy + const unsigned short MARKER_NODE = 13; readonly attribute unsigned short nodeType; readonly attribute DOMString nodeName; @@ -4520,6 +4522,9 @@ get a direct instance of it.
{{DocumentFragment}}
{{Node}} . {{Node/DOCUMENT_FRAGMENT_NODE}} (11). + +
{{Marker}} +
{{Node}} . {{Node/MARKER_NODE}} (13).
node . {{Node/nodeName}} @@ -4553,6 +4558,9 @@ get a direct instance of it.
{{DocumentFragment}}
"#document-fragment". + +
{{Marker}} +
"#marker". @@ -4586,6 +4594,9 @@ statement, switching on the interface this implements:
{{DocumentFragment}}
DOCUMENT_FRAGMENT_NODE (11). + +
{{Marker}} +
MARKER_NODE (13).

The nodeName getter steps are to return the first matching @@ -5034,6 +5045,10 @@ and an optional document docume

Set copy's target and data to those of node. +

{{Marker}} +

Set copy's type and name to those of + node. +

Otherwise

Do nothing. @@ -8550,6 +8565,42 @@ constructor steps are to set this's data to +

Interface {{Marker}}

+ +
+enum MarkerType { "marker", "start", "end" };
+
+[Exposed=Window]
+interface Marker : Node {
+  constructor(MarkerType type, optional DOMString name = "");
+
+  readonly attribute MarkerType type;
+  readonly attribute DOMString name;
+};
+
+ +
+
marker = new Marker(type [, name = ""]) +
Returns a new {{Marker}} node whose type is type and + name is name. +
+ +

{{Marker}} nodes are simply known as +markers. + +

Markers have an associated +type and +name. + +

+

The new Marker(type, name) +constructor steps are to set this's type to type, this's +name to name, and this's node document to +current global object's associated Document. +

+ + +

Ranges

@@ -10527,6 +10578,7 @@ callback interface NodeFilter { const unsigned long SHOW_DOCUMENT_TYPE = 0x200; const unsigned long SHOW_DOCUMENT_FRAGMENT = 0x400; const unsigned long SHOW_NOTATION = 0x800; // legacy + const unsigned long SHOW_MARKER = 0x1000; unsigned short acceptNode(Node node); }; @@ -10558,6 +10610,7 @@ JavaScript function.
  • SHOW_DOCUMENT (256, 100 in hexadecimal);
  • SHOW_DOCUMENT_TYPE (512, 200 in hexadecimal);
  • SHOW_DOCUMENT_FRAGMENT (1024, 400 in hexadecimal). +
  • SHOW_MARKER (4096, 1000 in hexadecimal).