@@ -1029,6 +1029,7 @@ are not to be used for anything else. [[!HTML]]
1029
1029
{{Event/preventDefault()}} method was not invoked; otherwise false.
1030
1030
</dl>
1031
1031
1032
+ <div algorithm>
1032
1033
<p> To <dfn export for=Event id=concept-flatten-options>flatten</dfn> <var> options</var> , run these
1033
1034
steps:
1034
1035
@@ -1037,7 +1038,9 @@ steps:
1037
1038
1038
1039
<li><p> Return |options|["{{EventListenerOptions/capture}}"] .
1039
1040
</ol>
1041
+ </div>
1040
1042
1043
+ <div algorithm>
1041
1044
<p> To <dfn export for=Event>flatten more</dfn> <!-- sorry --> <var> options</var> , run these
1042
1045
steps:
1043
1046
@@ -1063,6 +1066,7 @@ steps:
1063
1066
1064
1067
<li><p> Return <var> capture</var> , <var> passive</var> , <var> once</var> , and <var> signal</var> .
1065
1068
</ol>
1069
+ </div>
1066
1070
1067
1071
<p> The <dfn constructor for=EventTarget lt=EventTarget()><code>new EventTarget()</code></dfn>
1068
1072
constructor steps are to do nothing.
@@ -1076,6 +1080,7 @@ or <a for=EventTarget>legacy-canceled-activation behavior</a>.
1076
1080
if this would be useful for your programs. For now, all author-created {{EventTarget}} s do not
1077
1081
participate in a tree structure.</p>
1078
1082
1083
+ <div algorithm>
1079
1084
<p> The <dfn>default passive value</dfn> , given an event type |type| and an {{EventTarget}}
1080
1085
|eventTarget|, is determined as follows:
1081
1086
@@ -1095,7 +1100,9 @@ participate in a tree structure.</p>
1095
1100
1096
1101
<li><p> Return false.
1097
1102
</ol>
1103
+ </div>
1098
1104
1105
+ <div algorithm>
1099
1106
<p> To <dfn export>add an event listener</dfn> , given an {{EventTarget}} object
1100
1107
<var> eventTarget</var> and an <a>event listener</a> <var> listener</var> , run these steps:
1101
1108
@@ -1114,7 +1121,8 @@ participate in a tree structure.</p>
1114
1121
<li><p> If <var> listener</var> 's <a for="event listener">callback</a> is null, then return.
1115
1122
1116
1123
<li><p> If <var> listener</var> 's <a for="event listener">passive</a> is null, then set it to the
1117
- <a>default passive value</a> given |type| and |eventTarget|.
1124
+ <a>default passive value</a> given <var> listener</var> 's <a for="event listener">type</a> and
1125
+ <var> eventTarget</var> .
1118
1126
1119
1127
<li><p> If <var> eventTarget</var> 's <a>event listener list</a> does not <a for=list>contain</a> an
1120
1128
<a>event listener</a> whose <a for="event listener">type</a> is <var> listener</var> 's
@@ -1134,7 +1142,9 @@ participate in a tree structure.</p>
1134
1142
1135
1143
<p class=note> The <a>add an event listener</a> concept exists to ensure <a>event handlers</a> use
1136
1144
the same code path. [[HTML]]
1145
+ </div>
1137
1146
1147
+ <div algorithm>
1138
1148
<p> The
1139
1149
<dfn method for=EventTarget><code>addEventListener(<var>type</var>, <var>callback</var>, <var>options</var>)</code></dfn>
1140
1150
method steps are:
@@ -1149,31 +1159,37 @@ method steps are:
1149
1159
<a for="event listener">passive</a> is <var> passive</var> , <a for="event listener">once</a> is
1150
1160
<var> once</var> , and <a for="event listener">signal</a> is <var> signal</var> .
1151
1161
</ol>
1162
+ </div>
1152
1163
1164
+ <div algorithm>
1153
1165
<p> To <dfn export>remove an event listener</dfn> , given an {{EventTarget}} object
1154
1166
<var> eventTarget</var> and an <a>event listener</a> <var> listener</var> , run these steps:
1155
1167
1156
1168
<ol>
1157
1169
<li><p> If <var> eventTarget</var> is a {{ServiceWorkerGlobalScope}} object and its
1158
1170
<a for="ServiceWorkerGlobalScope">service worker</a> 's
1159
- <a for="service worker">set of event types to handle</a> contains <var> type </var> , then
1160
- <a>report a warning to the console </a> that this might not give the expected results.
1161
- [[!SERVICE-WORKERS]]
1171
+ <a for="service worker">set of event types to handle</a> <a for=set>contains</a>
1172
+ <var> listener </var> 's <a for="event listener">type </a>, then <a>report a warning to the console</a>
1173
+ that this might not give the expected results. [[!SERVICE-WORKERS]]
1162
1174
1163
1175
<li><p> Set <var> listener</var> 's <a for="event listener">removed</a> to true and
1164
1176
<a for=list>remove</a> <var> listener</var> from <var> eventTarget</var> 's
1165
1177
<a for=EventTarget>event listener list</a> .
1166
1178
</ol>
1167
1179
1168
1180
<p class=note> HTML needs this to define event handlers. [[HTML]]
1181
+ </div>
1169
1182
1183
+ <div algorithm>
1170
1184
<p> To <dfn export>remove all event listeners</dfn> , given an {{EventTarget}} object
1171
1185
<var> eventTarget</var> , <a for=list>for each</a> <var> listener</var> of <var> eventTarget</var> 's
1172
1186
<a for=EventTarget>event listener list</a> , <a>remove an event listener</a> with
1173
1187
<var> eventTarget</var> and <var> listener</var> .
1174
1188
1175
1189
<p class=note> HTML needs this to define <code> document.open()</code> . [[HTML]]
1190
+ </div>
1176
1191
1192
+ <div algorithm>
1177
1193
<p> The
1178
1194
<dfn method for=EventTarget><code>removeEventListener(<var>type</var>, <var>callback</var>, <var>options</var>)</code></dfn>
1179
1195
method steps are:
@@ -1191,7 +1207,9 @@ method steps are:
1191
1207
<p class=note> The event listener list will not contain multiple event listeners with equal
1192
1208
<var> type</var> , <var> callback</var> , and <var> capture</var> , as <a>add an event listener</a>
1193
1209
prevents that.
1210
+ </div>
1194
1211
1212
+ <div algorithm>
1195
1213
<p> The <dfn method for=EventTarget><code>dispatchEvent(<var>event</var>)</code></dfn> method steps
1196
1214
are:
1197
1215
@@ -1203,6 +1221,7 @@ are:
1203
1221
1204
1222
<li><p> Return the result of <a>dispatching</a> <var> event</var> to <a>this</a> .
1205
1223
</ol>
1224
+ </div>
1206
1225
1207
1226
1208
1227
<h3 id=observing-event-listeners>Observing event listeners</h3>
@@ -10165,6 +10184,7 @@ James M Snell,
10165
10184
James Robinson,
10166
10185
Jeffrey Yasskin,
10167
10186
Jens Lindström,
10187
+ Jeremy Davis<!-- jeremydavis519; GitHub -->,
10168
10188
Jesse McCarthy,
10169
10189
Jinho Bang,
10170
10190
João Eiras,
0 commit comments