소스 검색

js.html api documentation (#5868)

* js.html api documentation

* remove some wiki markup

* added copyright notice
Mark Knol 8 년 전
부모
커밋
596a316c40
100개의 변경된 파일2691개의 추가작업 그리고 0개의 파일을 삭제
  1. 55 0
      std/js/html/AnchorElement.hx
  2. 71 0
      std/js/html/Animation.hx
  3. 15 0
      std/js/html/AnimationEffectReadOnly.hx
  4. 7 0
      std/js/html/AnimationEffectTiming.hx
  5. 39 0
      std/js/html/AnimationEffectTimingReadOnly.hx
  6. 19 0
      std/js/html/AnimationEvent.hx
  7. 11 0
      std/js/html/AnimationTimeline.hx
  8. 39 0
      std/js/html/AreaElement.hx
  9. 7 0
      std/js/html/ArrayBufferView.hx
  10. 7 0
      std/js/html/Attr.hx
  11. 7 0
      std/js/html/AudioElement.hx
  12. 11 0
      std/js/html/BRElement.hx
  13. 15 0
      std/js/html/BaseElement.hx
  14. 39 0
      std/js/html/BatteryManager.hx
  15. 7 0
      std/js/html/BeforeUnloadEvent.hx
  16. 19 0
      std/js/html/Blob.hx
  17. 31 0
      std/js/html/BodyElement.hx
  18. 23 0
      std/js/html/BroadcastChannel.hx
  19. 68 0
      std/js/html/ButtonElement.hx
  20. 7 0
      std/js/html/CDATASection.hx
  21. 7 0
      std/js/html/CSS.hx
  22. 11 0
      std/js/html/CSSMediaRule.hx
  23. 15 0
      std/js/html/CSSPageRule.hx
  24. 152 0
      std/js/html/CSSPrimitiveValue.hx
  25. 7 0
      std/js/html/CSSRule.hx
  26. 7 0
      std/js/html/CSSRuleList.hx
  27. 7 0
      std/js/html/CSSStyleDeclaration.hx
  28. 7 0
      std/js/html/CSSStyleRule.hx
  29. 7 0
      std/js/html/CSSStyleSheet.hx
  30. 40 0
      std/js/html/CSSValue.hx
  31. 15 0
      std/js/html/CSSValueList.hx
  32. 27 0
      std/js/html/CanvasElement.hx
  33. 11 0
      std/js/html/CanvasGradient.hx
  34. 11 0
      std/js/html/CanvasPattern.hx
  35. 7 0
      std/js/html/CanvasRenderingContext2D.hx
  36. 15 0
      std/js/html/CaretPosition.hx
  37. 35 0
      std/js/html/CharacterData.hx
  38. 23 0
      std/js/html/Client.hx
  39. 19 0
      std/js/html/Clients.hx
  40. 11 0
      std/js/html/ClipboardEvent.hx
  41. 134 0
      std/js/html/CloseEvent.hx
  42. 7 0
      std/js/html/Comment.hx
  43. 7 0
      std/js/html/CompositionEvent.hx
  44. 93 0
      std/js/html/Console.hx
  45. 15 0
      std/js/html/ContentElement.hx
  46. 35 0
      std/js/html/Coordinates.hx
  47. 11 0
      std/js/html/Crypto.hx
  48. 23 0
      std/js/html/CryptoKey.hx
  49. 17 0
      std/js/html/CustomEvent.hx
  50. 11 0
      std/js/html/DListElement.hx
  51. 23 0
      std/js/html/DOMElement.hx
  52. 11 0
      std/js/html/DOMError.hx
  53. 7 0
      std/js/html/DOMException.hx
  54. 23 0
      std/js/html/DOMImplementation.hx
  55. 51 0
      std/js/html/DOMMatrix.hx
  56. 114 0
      std/js/html/DOMMatrixReadOnly.hx
  57. 7 0
      std/js/html/DOMParser.hx
  58. 7 0
      std/js/html/DOMPoint.hx
  59. 23 0
      std/js/html/DOMPointReadOnly.hx
  60. 7 0
      std/js/html/DOMRect.hx
  61. 39 0
      std/js/html/DOMRectReadOnly.hx
  62. 19 0
      std/js/html/DOMStringList.hx
  63. 7 0
      std/js/html/DOMStringMap.hx
  64. 31 0
      std/js/html/DOMTokenList.hx
  65. 11 0
      std/js/html/DataElement.hx
  66. 11 0
      std/js/html/DataListElement.hx
  67. 43 0
      std/js/html/DataTransfer.hx
  68. 11 0
      std/js/html/DedicatedWorkerGlobalScope.hx
  69. 19 0
      std/js/html/DeviceAcceleration.hx
  70. 23 0
      std/js/html/DeviceMotionEvent.hx
  71. 23 0
      std/js/html/DeviceOrientationEvent.hx
  72. 7 0
      std/js/html/DeviceRotationRate.hx
  73. 11 0
      std/js/html/DivElement.hx
  74. 273 0
      std/js/html/Document.hx
  75. 19 0
      std/js/html/DocumentFragment.hx
  76. 7 0
      std/js/html/DocumentTimeline.hx
  77. 19 0
      std/js/html/DocumentType.hx
  78. 7 0
      std/js/html/DragEvent.hx
  79. 7 0
      std/js/html/Element.hx
  80. 31 0
      std/js/html/EmbedElement.hx
  81. 27 0
      std/js/html/ErrorEvent.hx
  82. 71 0
      std/js/html/Event.hx
  83. 7 0
      std/js/html/EventListener.hx
  84. 31 0
      std/js/html/EventSource.hx
  85. 19 0
      std/js/html/EventTarget.hx
  86. 7 0
      std/js/html/ExtendableEvent.hx
  87. 27 0
      std/js/html/ExtendableMessageEvent.hx
  88. 23 0
      std/js/html/FetchEvent.hx
  89. 7 0
      std/js/html/FieldSetElement.hx
  90. 19 0
      std/js/html/File.hx
  91. 7 0
      std/js/html/FileList.hx
  92. 83 0
      std/js/html/FileReader.hx
  93. 7 0
      std/js/html/FileReaderSync.hx
  94. 11 0
      std/js/html/FocusEvent.hx
  95. 47 0
      std/js/html/FontFace.hx
  96. 23 0
      std/js/html/FontFaceSet.hx
  97. 39 0
      std/js/html/FormData.hx
  98. 11 0
      std/js/html/FormElement.hx
  99. 15 0
      std/js/html/FrameSetElement.hx
  100. 35 0
      std/js/html/Gamepad.hx

+ 55 - 0
std/js/html/AnchorElement.hx

@@ -24,21 +24,76 @@
 
 package js.html;
 
+/**
+	The `HTMLAnchorElement` interface represents hyperlink elements and provides special properties and methods (beyond those of the regular `HTMLElement` object interface they also have available to them by inheritance) for manipulating the layout and presentation of such elements.
+
+	Documentation [HTMLAnchorElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLAnchorElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLAnchorElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLAnchorElement>
+**/
 @:native("HTMLAnchorElement")
 extern class AnchorElement extends Element
 {
+	
+	/**
+		Is a `DOMString` that reflects the `target` HTML attribute, indicating where to display the linked resource.
+	**/
 	var target : String;
+	
+	/**
+		Is a `DOMString` indicating that the linked resource is intended to be downloaded rather than displayed in the browser. The value represent the proposed name of the file. If the name is not a valid filename of the underlying OS, browser will adapt it. The value is a URL with a scheme like `http:`, `file:`, `data:` or even `blob:` (created with `URL.createObjectURL`).
+	**/
 	var download : String;
 	var ping : String;
+	
+	/**
+		Is a `DOMString` that reflects the `rel` HTML attribute, specifying the relationship of the target object to the linked object.
+	**/
 	var rel : String;
+	
+	/**
+		Returns a `DOMTokenList` that reflects the `rel` HTML attribute, as a list of tokens.
+	**/
 	var relList(default,null) : DOMTokenList;
+	
+	/**
+		Is a `DOMString` that reflects the `hreflang` HTML attribute, indicating the language of the linked resource.
+	**/
 	var hreflang : String;
+	
+	/**
+		Is a `DOMString` that reflects the `type` HTML attribute, indicating the MIME type of the linked resource.
+	**/
 	var type : String;
+	
+	/**
+		Is a `DOMString` being a synonym for the `Node.textContent` property.
+	**/
 	var text : String;
+	
+	/**
+		Is a `DOMString` representing a comma-separated list of coordinates.
+	**/
 	var coords : String;
+	
+	/**
+		Is a `DOMString` representing the character encoding of the linked resource.
+	**/
 	var charset : String;
+	
+	/**
+		Is a `DOMString` representing the anchor name.
+	**/
 	var name : String;
+	
+	/**
+		Is a `DOMString` representing that the `rev` HTML attribute, specifying the relationship of the link object to the target object.
+	**/
 	var rev : String;
+	
+	/**
+		Is a `DOMString` representing the shape of the active area.
+	**/
 	var shape : String;
 	var href : String;
 	var origin(default,null) : String;

+ 71 - 0
std/js/html/Animation.hx

@@ -24,30 +24,101 @@
 
 package js.html;
 
+/**
+	The `Animation` interface of the Web Animations API represents a single animation player and provides playback controls and a timeline for an animation node or source.
+
+	Documentation [Animation](https://developer.mozilla.org/en-US/docs/Web/API/Animation) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/Animation$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/Animation>
+**/
 @:native("Animation")
 extern class Animation extends EventTarget
 {
+	
+	/**
+		Gets and sets the `String` used to identify the animation.
+	**/
 	var id : String;
+	
+	/**
+		Gets and sets the `AnimationEffectReadOnly` associated with this animation. This will usually be a `KeyframeEffect` object.
+	**/
 	var effect(default,null) : AnimationEffectReadOnly;
+	
+	/**
+		Gets or sets the `AnimationTimeline` associated with this animation.
+	**/
 	var timeline(default,null) : AnimationTimeline;
+	
+	/**
+		Gets or sets the scheduled time when an animation's playback should begin.
+	**/
 	var startTime : Float;
+	
+	/**
+		The current time value of the animation in milliseconds, whether running or paused. If the animation lacks a `AnimationTimeline`, is inactive or hasn't been played yet, its value is `null`.
+	**/
 	var currentTime : Float;
+	
+	/**
+		Gets or sets the playback rate of the animation.
+	**/
 	var playbackRate : Float;
+	
+	/**
+		Returns an enumerated value describing the playback state of an animation.
+	**/
 	var playState(default,null) : AnimationPlayState;
+	
+	/**
+		Returns the current ready Promise for this animation.
+	**/
 	var ready(default,null) : Promise<Animation>;
+	
+	/**
+		Returns the current finished Promise for this animation.
+	**/
 	var finished(default,null) : Promise<Animation>;
+	
+	/**
+		Gets and sets the event handler for the `finish` event.
+	**/
 	var onfinish : haxe.Constraints.Function;
+	
+	/**
+		Gets and sets the event handler for the `cancel` event.
+	**/
 	var oncancel : haxe.Constraints.Function;
 	
 	/** @throws DOMError */
 	function new( ?effect : KeyframeEffectReadOnly, ?timeline : AnimationTimeline ) : Void;
+	
+	/**
+		Clears all `KeyframeEffect` caused by this animation and aborts its playback.
+	**/
 	function cancel() : Void;
 	/** @throws DOMError */
+	
+	/**
+		Seeks either end of an animation, depending on whether the animation is playing or reversing.
+	**/
 	function finish() : Void;
 	/** @throws DOMError */
+	
+	/**
+		Starts or resumes playing of an animation, or begins the animation again if it previously finished.
+	**/
 	function play() : Void;
 	/** @throws DOMError */
+	
+	/**
+		Suspends playing of an animation.
+	**/
 	function pause() : Void;
 	/** @throws DOMError */
+	
+	/**
+		Reverses playback direction, stopping at the start of the animation. If the animation is finished or unplayed, it will play from end to beginning.
+	**/
 	function reverse() : Void;
 }

+ 15 - 0
std/js/html/AnimationEffectReadOnly.hx

@@ -24,10 +24,25 @@
 
 package js.html;
 
+/**
+	The `AnimationEffectReadOnly` interface of the Web Animations API defines current and future animation effects like `KeyframeEffect`, which can be passed to `Animation` objects for playing, and `KeyframeEffectReadOnly` (which is used by CSS Animations and Transitions).
+
+	Documentation [AnimationEffectReadOnly](https://developer.mozilla.org/en-US/docs/Web/API/AnimationEffectReadOnly) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/AnimationEffectReadOnly$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/AnimationEffectReadOnly>
+**/
 @:native("AnimationEffectReadOnly")
 extern class AnimationEffectReadOnly
 {
+	
+	/**
+		The `AnimationEffectTimingReadOnly` object associated with the animation containing all the animation's timing values.
+	**/
 	var timing(default,null) : AnimationEffectTimingReadOnly;
 	
+	
+	/**
+		Returns the calculated timing properties for this Animation Effect.
+	**/
 	function getComputedTiming() : ComputedTimingProperties;
 }

+ 7 - 0
std/js/html/AnimationEffectTiming.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `AnimationEffectTiming` interface of the Web Animations API is comprised of timing properties. It is returned by the `timing` attribute of a `KeyframeEffect`.
+
+	Documentation [AnimationEffectTiming](https://developer.mozilla.org/en-US/docs/Web/API/AnimationEffectTiming) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/AnimationEffectTiming$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/AnimationEffectTiming>
+**/
 @:native("AnimationEffectTiming")
 extern class AnimationEffectTiming extends AnimationEffectTimingReadOnly
 {

+ 39 - 0
std/js/html/AnimationEffectTimingReadOnly.hx

@@ -24,16 +24,55 @@
 
 package js.html;
 
+/**
+	The `AnimationEffectTimingReadOnly` interface of the Web Animations API is comprised of timing properties.
+
+	Documentation [AnimationEffectTimingReadOnly](https://developer.mozilla.org/en-US/docs/Web/API/AnimationEffectTimingReadOnly) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/AnimationEffectTimingReadOnly$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/AnimationEffectTimingReadOnly>
+**/
 @:native("AnimationEffectTimingReadOnly")
 extern class AnimationEffectTimingReadOnly
 {
+	
+	/**
+		The number of milliseconds to delay the start of the animation. Defaults to `0`.
+	**/
 	var delay(default,null) : Float;
+	
+	/**
+		The number of milliseconds to delay after the end of an animation. This is primarily of use when sequencing animations based on the end time of another animation. Defaults to `0`.
+	**/
 	var endDelay(default,null) : Float;
+	
+	/**
+		Dictates whether the animation's effects should be reflected by the element(s) state prior to playing (`backwards`), retained after the animation has completed playing (`forwards`), or `both`. Defaults to `none`.
+	**/
 	var fill(default,null) : FillMode;
+	
+	/**
+		A number representing which repetition the animation begins at and its progress through it.
+	**/
 	var iterationStart(default,null) : Float;
+	
+	/**
+		The number of times the animation should repeat. Defaults to `1`, and can also take a value of infinity to make it repeat infinitely.
+	**/
 	var iterations(default,null) : Float;
+	
+	/**
+		The number of milliseconds each iteration of the animation takes to complete. Defaults to `0`.
+	**/
 	var duration(default,null) : haxe.extern.EitherType<Float,String>;
+	
+	/**
+		Whether the animation runs forwards (`normal`), backwards (`reverse`), switches direction after each iteration (`alternate`), or runs backwards and switches direction after each iteration (`alternate-reverse`). Defaults to `normal`.
+	**/
 	var direction(default,null) : PlaybackDirection;
+	
+	/**
+		The rate of the animation's change over time. Accepts the pre-defined values `linear`, `ease`, `ease-in`, `ease-out`, and `ease-in-out`, or a custom cubic-bezier value like `cubic-bezier(0.42, 0, 0.58, 1)`. Defaults to `linear`.
+	**/
 	var easing(default,null) : String;
 	
 }

+ 19 - 0
std/js/html/AnimationEvent.hx

@@ -24,11 +24,30 @@
 
 package js.html;
 
+/**
+	The `AnimationEvent` interface represents events providing information related to animations.
+
+	Documentation [AnimationEvent](https://developer.mozilla.org/en-US/docs/Web/API/AnimationEvent) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/AnimationEvent$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/AnimationEvent>
+**/
 @:native("AnimationEvent")
 extern class AnimationEvent extends Event
 {
+	
+	/**
+		Is a `DOMString` containing the value of the `animation-name` CSS property associated with the transition.
+	**/
 	var animationName(default,null) : String;
+	
+	/**
+		Is a `float` giving the amount of time the animation has been running, in seconds, when this event fired, excluding any time the animation was paused. For an `"animationstart"` event, `elapsedTime` is `0.0` unless there was a negative value for `animation-delay`, in which case the event will be fired with `elapsedTime` containing  `(-1 * `delay`)`.
+	**/
 	var elapsedTime(default,null) : Float;
+	
+	/**
+		Is a `DOMString`, starting with `'::'`, containing the name of the pseudo-element the animation runs on. If the animation doesn't run on a pseudo-element but on the element, an empty string: `''``.`
+	**/
 	var pseudoElement(default,null) : String;
 	
 	/** @throws DOMError */

+ 11 - 0
std/js/html/AnimationTimeline.hx

@@ -24,9 +24,20 @@
 
 package js.html;
 
+/**
+	The `AnimationTimeline` interface of the Web Animations API represents the timeline of an animation. This interface exists to define timeline features (inherited by `DocumentTimeline` and future timeline types) and is not itself directly used by developers. Anywhere you see `AnimationTimeline`, you should use `DocumentTimeline` or any other timeline type instead.
+
+	Documentation [AnimationTimeline](https://developer.mozilla.org/en-US/docs/Web/API/AnimationTimeline) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/AnimationTimeline$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/AnimationTimeline>
+**/
 @:native("AnimationTimeline")
 extern class AnimationTimeline
 {
+	
+	/**
+		Returns the time value in milliseconds for this timeline or `null` if this timeline is inactive.
+	**/
 	var currentTime(default,null) : Float;
 	
 }

+ 39 - 0
std/js/html/AreaElement.hx

@@ -24,17 +24,56 @@
 
 package js.html;
 
+/**
+	The `HTMLAreaElement` interface provides special properties and methods (beyond those of the regular object `HTMLElement` interface it also has available to it by inheritance) for manipulating the layout and presentation of area elements.
+
+	Documentation [HTMLAreaElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLAreaElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLAreaElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLAreaElement>
+**/
 @:native("HTMLAreaElement")
 extern class AreaElement extends Element
 {
+	
+	/**
+		Is a `DOMString` that reflects the `alt` HTML attribute, containing alternative text for the element.
+	**/
 	var alt : String;
+	
+	/**
+		Is a `DOMString` that reflects the `coords` HTML attribute, containing coordinates to define the hot-spot region.
+	**/
 	var coords : String;
+	
+	/**
+		Is a `DOMString` that reflects the `shape` HTML attribute, indicating the shape of the hot-spot, limited to known values.
+	**/
 	var shape : String;
+	
+	/**
+		Is a `DOMString` that reflects the `target` HTML attribute, indicating the browsing context in which to open the linked resource.
+	**/
 	var target : String;
+	
+	/**
+		Is a `DOMString` indicating that the linked resource is intended to be downloaded rather than displayed in the browser. The value represent the proposed name of the file. If the name is not a valid filename of the underlying OS, browser will adapt it.
+	**/
 	var download : String;
 	var ping : String;
+	
+	/**
+		Is a `DOMString` that reflects the `rel` HTML attribute, indicating relationships of the current document to the linked resource.
+	**/
 	var rel : String;
+	
+	/**
+		Returns a `DOMTokenList` that reflects the `rel` HTML attribute, indicating relationships of the current document to the linked resource, as a list of tokens.
+	**/
 	var relList(default,null) : DOMTokenList;
+	
+	/**
+		Is a `Boolean` flag indicating if the area is inactive (`true`) or active (`false`).
+	**/
 	var noHref : Bool;
 	var href : String;
 	var origin(default,null) : String;

+ 7 - 0
std/js/html/ArrayBufferView.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	`ArrayBufferView` is a helper type representing any of the following JavaScript `TypedArray` types:
+
+	Documentation [ArrayBufferView](https://developer.mozilla.org/en-US/docs/Web/API/ArrayBufferView) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/ArrayBufferView$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/ArrayBufferView>
+**/
 @:native("ArrayBufferView")
 extern class ArrayBufferView
 {

+ 7 - 0
std/js/html/Attr.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	This type represents a DOM element's attribute as an object. In most DOM methods, you will probably directly retrieve the attribute as a string (e.g., `Element.getAttribute()`, but certain functions (e.g., `Element.getAttributeNode()`) or means of iterating give `Attr` types.
+
+	Documentation [Attr](https://developer.mozilla.org/en-US/docs/Web/API/Attr) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/Attr$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/Attr>
+**/
 @:native("Attr")
 extern class Attr extends Node
 {

+ 7 - 0
std/js/html/AudioElement.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `HTMLAudioElement` interface provides access to the properties of `audio` elements, as well as methods to manipulate them. It derives from the `HTMLMediaElement` interface.
+
+	Documentation [HTMLAudioElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLAudioElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLAudioElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLAudioElement>
+**/
 @:native("HTMLAudioElement")
 extern class AudioElement extends MediaElement
 {

+ 11 - 0
std/js/html/BRElement.hx

@@ -24,9 +24,20 @@
 
 package js.html;
 
+/**
+	The `HTMLBRElement` interface represents a HTML line break element (`br`). It inherits from `HTMLElement`.
+
+	Documentation [HTMLBRElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLBRElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLBRElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLBRElement>
+**/
 @:native("HTMLBRElement")
 extern class BRElement extends Element
 {
+	
+	/**
+		Is a `DOMString` indicating the flow of text around floating objects.
+	**/
 	var clear : String;
 	
 }

+ 15 - 0
std/js/html/BaseElement.hx

@@ -24,10 +24,25 @@
 
 package js.html;
 
+/**
+	The `HTMLBaseElement` interface contains the base URI for a document. This object inherits all of the properties and methods as described in the `HTMLElement` interface.
+
+	Documentation [HTMLBaseElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLBaseElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLBaseElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLBaseElement>
+**/
 @:native("HTMLBaseElement")
 extern class BaseElement extends Element
 {
+	
+	/**
+		Is a `DOMString` that reflects the `href` HTML attribute, containing a base URL for relative URLs in the document.
+	**/
 	var href : String;
+	
+	/**
+		Is a `DOMString` that reflects the `target` HTML attribute, containing a default target browsing context or frame for elements that do not have a target reference specified.
+	**/
 	var target : String;
 	
 }

+ 39 - 0
std/js/html/BatteryManager.hx

@@ -24,16 +24,55 @@
 
 package js.html;
 
+/**
+	The `BatteryManager` interface provides ways to get information about the system's battery charge level.
+
+	Documentation [BatteryManager](https://developer.mozilla.org/en-US/docs/Web/API/BatteryManager) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/BatteryManager$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/BatteryManager>
+**/
 @:native("BatteryManager")
 extern class BatteryManager extends EventTarget
 {
+	
+	/**
+		A Boolean value indicating whether or not the battery is currently being charged.
+	**/
 	var charging(default,null) : Bool;
+	
+	/**
+		A number representing the remaining time in seconds until the battery is fully charged, or 0 if the battery is already fully charged.
+	**/
 	var chargingTime(default,null) : Float;
+	
+	/**
+		A number representing the remaining time in seconds until the battery is completely discharged and the system will suspend.
+	**/
 	var dischargingTime(default,null) : Float;
+	
+	/**
+		A number representing the system's battery charge level scaled to a value between 0.0 and 1.0.
+	**/
 	var level(default,null) : Float;
+	
+	/**
+		A handler for the `chargingchange` event; This event is sent when the battery charging state is updated.
+	**/
 	var onchargingchange : haxe.Constraints.Function;
+	
+	/**
+		A handler for the `chargingtimechange` event; This event is sent when the battery charging time is updated
+	**/
 	var onchargingtimechange : haxe.Constraints.Function;
+	
+	/**
+		A handler for the `dischargingtimechange` event; This event is sent when the battery discharging time is updated.
+	**/
 	var ondischargingtimechange : haxe.Constraints.Function;
+	
+	/**
+		A handler for the `levelchange` event; This event is sent when the battery level is updated.
+	**/
 	var onlevelchange : haxe.Constraints.Function;
 	
 }

+ 7 - 0
std/js/html/BeforeUnloadEvent.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `beforeunload` event is fired when the window, the document and its resources are about to be unloaded.
+
+	Documentation [BeforeUnloadEvent](https://developer.mozilla.org/en-US/docs/Web/API/BeforeUnloadEvent) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/BeforeUnloadEvent$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/BeforeUnloadEvent>
+**/
 @:native("BeforeUnloadEvent")
 extern class BeforeUnloadEvent extends Event
 {

+ 19 - 0
std/js/html/Blob.hx

@@ -24,15 +24,34 @@
 
 package js.html;
 
+/**
+	A `Blob` object represents a file-like object of immutable, raw data. Blobs represent data that isn't necessarily in a JavaScript-native format. The `File` interface is based on `Blob`, inheriting blob functionality and expanding it to support files on the user's system.
+
+	Documentation [Blob](https://developer.mozilla.org/en-US/docs/Web/API/Blob) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/Blob$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/Blob>
+**/
 @:native("Blob")
 extern class Blob
 {
+	
+	/**
+		The size, in bytes, of the data contained in the `Blob` object.
+	**/
 	var size(default,null) : Int;
+	
+	/**
+		A string indicating the MIME type of the data contained in the `Blob`. If the type is unknown, this string is empty.
+	**/
 	var type(default,null) : String;
 	
 	/** @throws DOMError */
 	@:overload( function() : Void {} )
 	function new( blobParts : Array<haxe.extern.EitherType<ArrayBuffer,haxe.extern.EitherType<ArrayBufferView,haxe.extern.EitherType<Blob,String>>>>, ?options : BlobPropertyBag ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Returns a new `Blob` object containing the data in the specified range of bytes of the source `Blob`.
+	**/
 	function slice( ?start : Int, ?end : Int, ?contentType : String = "" ) : Blob;
 }

+ 31 - 0
std/js/html/BodyElement.hx

@@ -24,14 +24,45 @@
 
 package js.html;
 
+/**
+	The `HTMLBodyElement` interface provides special properties (beyond those of the regular `HTMLElement` interface they also inherit) for manipulating body elements.
+
+	Documentation [HTMLBodyElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLBodyElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLBodyElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLBodyElement>
+**/
 @:native("HTMLBodyElement")
 extern class BodyElement extends Element
 {
+	
+	/**
+		Is a `DOMString` that represents the foreground color of text.
+	**/
 	var text : String;
+	
+	/**
+		Is a `DOMString` that represents the color of unvisited links.
+	**/
 	var link : String;
+	
+	/**
+		Is a `DOMString` that represents the color of visited links.
+	**/
 	var vLink : String;
+	
+	/**
+		Is a `DOMString` that represents the color of active hyperlinks.
+	**/
 	var aLink : String;
+	
+	/**
+		Is a `DOMString` that represents the background color for the document.
+	**/
 	var bgColor : String;
+	
+	/**
+		Is a `DOMString` that represents the description of the location of the background image resource. Note that this is not an URI, though some older version of some browsers do expect it.
+	**/
 	var background : String;
 	var onafterprint : haxe.Constraints.Function;
 	var onbeforeprint : haxe.Constraints.Function;

+ 23 - 0
std/js/html/BroadcastChannel.hx

@@ -24,15 +24,38 @@
 
 package js.html;
 
+/**
+	The `BroadcastChannel` interface represents a named channel that any browsing context of a given origin can subscribe to. It allows communication between different documents (in different windows, tabs, frames or iframes) of the same origin. Messages are broadcasted via a `message` event fired at all `BroadcastChannel` objects listening to the channel.
+
+	Documentation [BroadcastChannel](https://developer.mozilla.org/en-US/docs/Web/API/BroadcastChannel) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/BroadcastChannel$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/BroadcastChannel>
+**/
 @:native("BroadcastChannel")
 extern class BroadcastChannel extends EventTarget
 {
+	
+	/**
+		Returns a `DOMString`, the name of the channel.
+	**/
 	var name(default,null) : String;
+	
+	/**
+		Is an `EventHandler` property that specifies the function to execute when a `message` event is fired on this object.
+	**/
 	var onmessage : haxe.Constraints.Function;
 	
 	/** @throws DOMError */
 	function new( channel : String ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Sends the message, of any type of object, to each `BroadcastChannel` object listening to the same channel.
+	**/
 	function postMessage( message : Dynamic ) : Void;
+	
+	/**
+		Closes the channel object, indicating it won't get any new messages, and allowing it to be, eventually, garbage collected.
+	**/
 	function close() : Void;
 }

+ 68 - 0
std/js/html/ButtonElement.hx

@@ -24,22 +24,90 @@
 
 package js.html;
 
+/**
+	The `HTMLButtonElement` interface provides properties and methods (beyond the `button` object interface it also has available to them by inheritance) for manipulating the layout and presentation of button elements.
+
+	Documentation [HTMLButtonElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLButtonElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLButtonElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLButtonElement>
+**/
 @:native("HTMLButtonElement")
 extern class ButtonElement extends Element
 {
+	
+	/**
+		Is a `Boolean` indicating whether or not the control should have input focus when the page loads, unless the user overrides it, for example by typing in a different control. Only one form-associated element in a document can have this attribute specified.
+	**/
 	var autofocus : Bool;
+	
+	/**
+		Is a `Boolean` indicating whether or not the control is disabled, meaning that it does not accept any clicks.
+	**/
 	var disabled : Bool;
+	
+	/**
+		Is a `HTMLFormElement` reflecting the form that this button is associated with. If the button is a descendant of a form element, then this attribute is the ID of that form element.
+		
+		 If the button is not a descendant of a form element, then the attribute can be the ID of any form element in the same document it is related to, or the `null` value if none matches.
+	**/
 	var form(default,null) : FormElement;
+	
+	/**
+		Is a `DOMString` reflecting the URI of a resource that processes information submitted by the button. If specified, this attribute overrides the `action` attribute of the `form` element that owns this element.
+	**/
 	var formAction : String;
 	var formEnctype : String;
+	
+	/**
+		Is a `DOMString` reflecting the HTTP method that the browser uses to submit the form. If specified, this attribute overrides the `method` attribute of the `form` element that owns this element.
+	**/
 	var formMethod : String;
+	
+	/**
+		Is a `Boolean` indicating that the form is not to be validated when it is submitted. If specified, this attribute overrides the `novalidate` attribute of the `form` element that owns this element.
+	**/
 	var formNoValidate : Bool;
+	
+	/**
+		Is a `DOMString` reflecting a name or keyword indicating where to display the response that is received after submitting the form. If specified, this attribute overrides the `target` attribute of the `form` element that owns this element.
+	**/
 	var formTarget : String;
+	
+	/**
+		Is a `DOMString` representing the name of the object when submitted with a form. {{HTMLVersionInline(5)}} If specified, it must not be the empty string.
+	**/
 	var name : String;
+	
+	/**
+		Is a `DOMString` indicating the behavior of the button. This is an enumerated attribute with the following possible values:
+		 
+		  `"submit"`: The button submits the form. This is the default value if the attribute is not specified, {{HTMLVersionInline(5)}} or if it is dynamically changed to an empty or invalid value.
+		  `"reset"`: The button resets the form.
+		  `"button"`: The button does nothing.
+		  `"menu"`: The button displays a menu. <em>(experimental)</em>
+		 
+		 
+	**/
 	var type : String;
+	
+	/**
+		Is a `DOMString` representing the current form control value of the button.
+	**/
 	var value : String;
+	
+	/**
+		Is a `Boolean` indicating whether the button is a candidate for constraint validation. It is `false` if any conditions bar it from constraint validation.
+	**/
 	var willValidate(default,null) : Bool;
+	
+	/**
+		Is a `ValidityState` representing the validity states that this button is in.
+	**/
 	var validity(default,null) : ValidityState;
+	
+	/**
+		Is a `DOMString` representing the localized message that describes the validation constraints that the control does not satisfy (if any). This attribute is the empty string if the control is not a candidate for constraint validation (`willValidate` is `false`), or it satisfies its constraints.
+	**/
 	var validationMessage(default,null) : String;
 	
 	function checkValidity() : Bool;

+ 7 - 0
std/js/html/CDATASection.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `CDATASection` interface represents a CDATA section that can be used within XML to include extended portions of unescaped text, such that the symbols  and &amp; do not need escaping as they normally do within XML when used as text.
+
+	Documentation [CDATASection](https://developer.mozilla.org/en-US/docs/Web/API/CDATASection) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CDATASection$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CDATASection>
+**/
 @:native("CDATASection")
 extern class CDATASection extends Text
 {

+ 7 - 0
std/js/html/CSS.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `CSS` interface holds useful CSS-related methods. No object with this interface are implemented: it contains only static methods and therefore is a utilitarian interface.
+
+	Documentation [CSS](https://developer.mozilla.org/en-US/docs/Web/API/CSS) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CSS$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CSS>
+**/
 @:native("CSS")
 extern class CSS
 {

+ 11 - 0
std/js/html/CSSMediaRule.hx

@@ -24,9 +24,20 @@
 
 package js.html;
 
+/**
+	The `CSSMediaRule` is an interface representing a single CSS `@media` rule. It implements the `CSSConditionRule` interface, and therefore the `CSSGroupingRule` and the `CSSRule` interface with a type value of `4` (`CSSRule.MEDIA_RULE`).
+
+	Documentation [CSSMediaRule](https://developer.mozilla.org/en-US/docs/Web/API/CSSMediaRule) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CSSMediaRule$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CSSMediaRule>
+**/
 @:native("CSSMediaRule")
 extern class CSSMediaRule extends CSSRule
 {
+	
+	/**
+		Specifies a `MediaList` representing the intended destination medium for style information.
+	**/
 	var media(default,null) : MediaList;
 	var cssRules(default,null) : CSSRuleList;
 	

+ 15 - 0
std/js/html/CSSPageRule.hx

@@ -24,10 +24,25 @@
 
 package js.html;
 
+/**
+	`CSSPageRule` is an interface representing a single CSS `@page` rule. It implements the `CSSRule` interface with a type value of `6` (`CSSRule.PAGE_RULE`).
+
+	Documentation [CSSPageRule](https://developer.mozilla.org/en-US/docs/Web/API/CSSPageRule) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CSSPageRule$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CSSPageRule>
+**/
 @:native("CSSPageRule")
 extern class CSSPageRule extends CSSRule
 {
+	
+	/**
+		Represents the text of the page selector associated with the at-rule.
+	**/
 	var selectorText : String;
+	
+	/**
+		Returns the declaration block associated with the at-rule.
+	**/
 	var style(default,null) : CSSStyleDeclaration;
 	
 }

+ 152 - 0
std/js/html/CSSPrimitiveValue.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `CSSPrimitiveValue` interface derives from the `CSSValue` interface and represents the current computed value of a CSS property.
+
+	Documentation [CSSPrimitiveValue](https://developer.mozilla.org/en-US/docs/Web/API/CSSPrimitiveValue) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CSSPrimitiveValue$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CSSPrimitiveValue>
+**/
 @:native("CSSPrimitiveValue")
 extern class CSSPrimitiveValue extends CSSValue
 {
@@ -54,20 +61,165 @@ extern class CSSPrimitiveValue extends CSSValue
 	static inline var CSS_RECT : Int = 24;
 	static inline var CSS_RGBCOLOR : Int = 25;
 	
+	
+	/**
+		An <code>unsigned short</code> representing the type of the value. Possible values are:
+		 <table class="standard-table">
+		  
+		   <tr>
+		    <td class="header">Constant</td>
+		    <td class="header">Description</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_ATTR</code></td>
+		    <td>The value is an <code>attr()</code> function. The value can be obtained by using the <code>getStringValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_CM</code></td>
+		    <td>The value is a <code>length</code> in centimeters. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_COUNTER</code></td>
+		    <td>The value is a counter or counters function. The value can be obtained by using the <code>getCounterValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_DEG</code></td>
+		    <td>The value is an <code>angle</code> in degrees. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_DIMENSION</code></td>
+		    <td>The value is a <code>number</code> with an unknown dimension. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_EMS</code></td>
+		    <td>The value is a <code>length</code> in em units. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_EXS</code></td>
+		    <td>The value is a <code>length</code> in ex units. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_GRAD</code></td>
+		    <td>The value is an <code>angle</code> in grads. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_HZ</code></td>
+		    <td>The value is a <code>frequency</code> in Hertz. The value can be obtained by using the getFloatValue method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_IDENT</code></td>
+		    <td>The value is an identifier. The value can be obtained by using the <code>getStringValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_IN</code></td>
+		    <td>The value is a <code>length</code> in inches. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_KHZ</code></td>
+		    <td>The value is a <code>frequency</code> in Kilohertz. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_MM</code></td>
+		    <td>The value is a <code>length</code> in millimeters. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_MS</code></td>
+		    <td>The value is a <code>time</code> in milliseconds. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_NUMBER</code></td>
+		    <td>The value is a simple <code>number</code>. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_PC</code></td>
+		    <td>The value is a <code>length</code> in picas. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_PERCENTAGE</code></td>
+		    <td>The value is a <code>percentage</code>. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_PT</code></td>
+		    <td>The value is a <code>length</code> in points. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_PX</code></td>
+		    <td>The value is a <code>length</code> in pixels. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_RAD</code></td>
+		    <td>The value is an <code>angle</code> in radians. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_RECT</code></td>
+		    <td>The value is a <code>shape</code> function. The value can be obtained by using the <code>getRectValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_RGBCOLOR</code></td>
+		    <td>The value is an <code>color</code>. The value can be obtained by using the <code>getRGBColorValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_S</code></td>
+		    <td>The value is a <code>time</code> in seconds. The value can be obtained by using the <code>getFloatValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_STRING</code></td>
+		    <td>The value is a <code>string</code>. The value can be obtained by using the <code>getStringValue()</code> method.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_UNKNOWN</code></td>
+		    <td>The value is not a recognized CSS2 value. The value can only be obtained by using the <code>CSSValue.cssText</code> attribute.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_URI</code></td>
+		    <td>The value is a <code>uri</code>. The value can be obtained by using the <code>getStringValue()</code> method.</td>
+		   </tr>
+		  
+		 </table>
+		 
+	**/
 	var primitiveType(default,null) : Int;
 	
 	/** @throws DOMError */
+	
+	/**
+		A method to set the float value with a specified unit. If the property attached with this value can not accept the specified unit or the float value, the value will be unchanged and a `DOMException` will be raised.
+	**/
 	function setFloatValue( unitType : Int, floatValue : Float ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		This method is used to get a float value in a specified unit. If this CSS value doesn't contain a float value or can't be converted into the specified unit, a `DOMException` is raised.
+	**/
 	function getFloatValue( unitType : Int ) : Float;
 	/** @throws DOMError */
+	
+	/**
+		A method to set the string value with the specified unit. If the property attached to this value can't accept the specified unit or the string value, the value will be unchanged and a `DOMException` will be raised.
+	**/
 	function setStringValue( stringType : Int, stringValue : String ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		This method is used to get the string value. If the CSS value doesn't contain a string value, a `DOMException` is raised.
+	**/
 	function getStringValue() : String;
 	/** @throws DOMError */
+	
+	/**
+		This method is used to get the counter value. If this CSS value doesn't contain a counter value, a `DOMException` is raised. Modification to the corresponding style property can be achieved using the `Counter` interface.
+	**/
 	function getCounterValue() : Dynamic/*MISSING Counter*/;
 	/** @throws DOMError */
+	
+	/**
+		This method is used to get the Rect value. If this CSS value doesn't contain a rect value, a `DOMException` is raised. Modification to the corresponding style property can be achieved using the `Rect` interface.
+	**/
 	function getRectValue() : Rect;
 	/** @throws DOMError */
+	
+	/**
+		This method is used to get the RGB color. If this CSS value doesn't contain a RGB color value, a `DOMException` is raised. Modification to the corresponding style property can be achieved using the `RGBColor` interface.
+	**/
 	function getRGBColorValue() : RGBColor;
 }

+ 7 - 0
std/js/html/CSSRule.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `CSSRule` interface represents a single CSS rule. There are several types of rules, listed in the Type constants section below.
+
+	Documentation [CSSRule](https://developer.mozilla.org/en-US/docs/Web/API/CSSRule) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CSSRule$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CSSRule>
+**/
 @:native("CSSRule")
 extern class CSSRule
 {

+ 7 - 0
std/js/html/CSSRuleList.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	A `CSSRuleList` is an (indirect-modify only) array-like object containing an ordered collection of `CSSRule` objects.
+
+	Documentation [CSSRuleList](https://developer.mozilla.org/en-US/docs/Web/API/CSSRuleList) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CSSRuleList$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CSSRuleList>
+**/
 @:native("CSSRuleList")
 extern class CSSRuleList implements ArrayAccess<CSSRule>
 {

+ 7 - 0
std/js/html/CSSStyleDeclaration.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	`CSSStyleDeclaration` represents a collection of CSS property-value pairs. It is used in a few APIs:
+
+	Documentation [CSSStyleDeclaration](https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleDeclaration) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleDeclaration$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleDeclaration>
+**/
 @:native("CSSStyleDeclaration")
 extern class CSSStyleDeclaration implements ArrayAccess<String>
 {

+ 7 - 0
std/js/html/CSSStyleRule.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	`CSSStyleRule` represents a single CSS style rule. It implements the `CSSRule` interface with a type value of `1` (`CSSRule.STYLE_RULE`).
+
+	Documentation [CSSStyleRule](https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleRule) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleRule$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleRule>
+**/
 @:native("CSSStyleRule")
 extern class CSSStyleRule extends CSSRule
 {

+ 7 - 0
std/js/html/CSSStyleSheet.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `CSSStyleSheet` interface represents a single CSS style sheet. It inherits properties and methods from its parent, `StyleSheet`.
+
+	Documentation [CSSStyleSheet](https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet>
+**/
 @:native("CSSStyleSheet")
 extern class CSSStyleSheet extends StyleSheet
 {

+ 40 - 0
std/js/html/CSSValue.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `CSSValue` interface represents the current computed value of a CSS property.
+
+	Documentation [CSSValue](https://developer.mozilla.org/en-US/docs/Web/API/CSSValue) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CSSValue$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CSSValue>
+**/
 @:native("CSSValue")
 extern class CSSValue
 {
@@ -32,7 +39,40 @@ extern class CSSValue
 	static inline var CSS_VALUE_LIST : Int = 2;
 	static inline var CSS_CUSTOM : Int = 3;
 	
+	
+	/**
+		A `DOMString` representing the current value.
+	**/
 	var cssText : String;
+	
+	/**
+		An <code>unsigned short</code> representing a code defining the type of the value. Possible values are:
+		 <table class="standard-table">
+		  
+		   <tr>
+		    <td class="header">Constant</td>
+		    <td class="header">Description</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_CUSTOM</code></td>
+		    <td>The value is a custom value.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_INHERIT</code></td>
+		    <td>The value is inherited and the <code>cssText</code> contains <code>"inherit"</code>.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_PRIMITIVE_VALUE</code></td>
+		    <td>The value is a primitive value and an instance of the <code>CSSPrimitiveValue</code> interface can be obtained by using binding-specific casting methods on this instance of the <code>CSSValue</code> interface.</td>
+		   </tr>
+		   <tr>
+		    <td><code>CSS_VALUE_LIST</code></td>
+		    <td>The value is a <code>CSSValue</code> list and an instance of the <code>CSSValueList</code> interface can be obtained by using binding-specific casting methods on this instance of the <code>CSSValue</code> interface.</td>
+		   </tr>
+		  
+		 </table>
+		 
+	**/
 	var cssValueType(default,null) : Int;
 	
 }

+ 15 - 0
std/js/html/CSSValueList.hx

@@ -24,10 +24,25 @@
 
 package js.html;
 
+/**
+	The `CSSValueList` interface derives from the `CSSValue` interface and provides the abstraction of an ordered collection of CSS values.
+
+	Documentation [CSSValueList](https://developer.mozilla.org/en-US/docs/Web/API/CSSValueList) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CSSValueList$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CSSValueList>
+**/
 @:native("CSSValueList")
 extern class CSSValueList extends CSSValue implements ArrayAccess<CSSValue>
 {
+	
+	/**
+		An `unsigned long` representing the number of `CSSValues` in the list.
+	**/
 	var length(default,null) : Int;
 	
+	
+	/**
+		This method is used to retrieve a `CSSValue` by ordinal index. The order in this collection represents the order of the values in the CSS style property. If index is greater than or equal to the number of values in the list, this returns `null`.
+	**/
 	function item( index : Int ) : CSSValue;
 }

+ 27 - 0
std/js/html/CanvasElement.hx

@@ -24,17 +24,44 @@
 
 package js.html;
 
+/**
+	The `HTMLCanvasElement` interface provides properties and methods for manipulating the layout and presentation of canvas elements. The `HTMLCanvasElement` interface also inherits the properties and methods of the `HTMLElement` interface.
+
+	Documentation [HTMLCanvasElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement>
+**/
 @:native("HTMLCanvasElement")
 extern class CanvasElement extends Element
 {
+	
+	/**
+		Is a positive `integer` reflecting the `width` HTML attribute of the `canvas` element interpreted in CSS pixels. When the attribute is not specified, or if it is set to an invalid value, like a negative, the default value of `300` is used.
+	**/
 	var width : Int;
+	
+	/**
+		Is a positive `integer` reflecting the `height` HTML attribute of the `canvas` element interpreted in CSS pixels. When the attribute is not specified, or if it is set to an invalid value, like a negative, the default value of `150` is used.
+	**/
 	var height : Int;
 	
 	/** @throws DOMError */
+	
+	/**
+		Returns a drawing context on the canvas, or null if the context ID is not supported. A drawing context lets you draw on the canvas. Calling getContext with `"2d"` returns a `CanvasRenderingContext2D` object, whereas calling it with `"experimental-webgl"` (or `"webgl"`) returns a `WebGLRenderingContext` object. This context is only available on browsers that implement WebGL.
+	**/
 	function getContext( contextId : String, ?contextOptions : Dynamic ) : Dynamic/*MISSING nsISupports*/;
 	/** @throws DOMError */
+	
+	/**
+		Returns a data-URL containing a representation of the image in the format specified by the `type` parameter (defaults to `png`). The returned image is in a resolution of 96dpi.
+	**/
 	function toDataURL( ?type : String = "", ?encoderOptions : Dynamic ) : String;
 	/** @throws DOMError */
+	
+	/**
+		Creates a `Blob` object representing the image contained in the canvas; this file may be cached on the disk or stored in memory at the discretion of the user agent.
+	**/
 	function toBlob( callback : Blob -> Void, ?type : String = "", ?encoderOptions : Dynamic ) : Void;
 	
 	/** Shorthand for getting a CanvasRenderingContext2D. */

+ 11 - 0
std/js/html/CanvasGradient.hx

@@ -24,9 +24,20 @@
 
 package js.html;
 
+/**
+	The `CanvasGradient` interface represents an opaque object describing a gradient. It is returned by the methods `CanvasRenderingContext2D.createLinearGradient()` or `CanvasRenderingContext2D.createRadialGradient()`.
+
+	Documentation [CanvasGradient](https://developer.mozilla.org/en-US/docs/Web/API/CanvasGradient) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CanvasGradient$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CanvasGradient>
+**/
 @:native("CanvasGradient")
 extern class CanvasGradient
 {
 	/** @throws DOMError */
+	
+	/**
+		Adds a new stop, defined by an `offset` and a `color`, to the gradient. If the offset is not between `0` and `1` an `INDEX_SIZE_ERR` is raised, if the color can't be parsed as a CSS `color`, a `SYNTAX_ERR` is raised.
+	**/
 	function addColorStop( offset : Float, color : String ) : Void;
 }

+ 11 - 0
std/js/html/CanvasPattern.hx

@@ -24,8 +24,19 @@
 
 package js.html;
 
+/**
+	The `CanvasPattern` interface represents an opaque object describing a pattern, based on an image, a canvas or a video, created by the `CanvasRenderingContext2D.createPattern()` method.
+
+	Documentation [CanvasPattern](https://developer.mozilla.org/en-US/docs/Web/API/CanvasPattern) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CanvasPattern$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CanvasPattern>
+**/
 @:native("CanvasPattern")
 extern class CanvasPattern
 {
+	
+	/**
+		Applies an `SVGMatrix` representing a linear transform to the pattern.
+	**/
 	function setTransform( matrix : js.html.svg.Matrix ) : Void;
 }

+ 7 - 0
std/js/html/CanvasRenderingContext2D.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	To get an object of this interface, call `getContext()` on a `canvas element`, supplying "2d" as the argument:
+
+	Documentation [CanvasRenderingContext2D](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D>
+**/
 @:native("CanvasRenderingContext2D")
 extern class CanvasRenderingContext2D
 {

+ 15 - 0
std/js/html/CaretPosition.hx

@@ -24,10 +24,25 @@
 
 package js.html;
 
+/**
+	The `CaretPosition` interface represents the caret postion, an indicator for the text insertion point. You can get a `CaretPosition` using the `document.caretPositionFromPoint` method.
+
+	Documentation [CaretPosition](https://developer.mozilla.org/en-US/docs/Web/API/CaretPosition) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CaretPosition$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CaretPosition>
+**/
 @:native("CaretPosition")
 extern class CaretPosition
 {
+	
+	/**
+		Returns a `Node` containing the found node at the caret's position.
+	**/
 	var offsetNode(default,null) : Node;
+	
+	/**
+		Returns a `long` representing the character offset in the caret position node.
+	**/
 	var offset(default,null) : Int;
 	
 	function getClientRect() : DOMRect;

+ 35 - 0
std/js/html/CharacterData.hx

@@ -24,23 +24,58 @@
 
 package js.html;
 
+/**
+	The `CharacterData` abstract interface represents a `Node` object that contains characters. This is an abstract interface, meaning there aren't any object of type `CharacterData`: it is implemented by other interfaces, like `Text`, `Comment`, or `ProcessingInstruction` which aren't abstract.
+
+	Documentation [CharacterData](https://developer.mozilla.org/en-US/docs/Web/API/CharacterData) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CharacterData$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CharacterData>
+**/
 @:native("CharacterData")
 extern class CharacterData extends Node
 {
+	
+	/**
+		Is a `DOMString` representing the textual data contained in this object.
+	**/
 	var data : String;
+	
+	/**
+		Returns an `unsigned long` representing the size of the string contained in `CharacterData.data`.
+	**/
 	var length(default,null) : Int;
 	var previousElementSibling(default,null) : Element;
 	var nextElementSibling(default,null) : Element;
 	
 	/** @throws DOMError */
+	
+	/**
+		Returns a `DOMString` containing the part of `CharacterData.data` of the specified length and starting at the specified offset.
+	**/
 	function substringData( offset : Int, count : Int ) : String;
 	/** @throws DOMError */
+	
+	/**
+		Appends the given `DOMString` to the `CharacterData.data` string; when this method returns, `data` contains the concatenated `DOMString`.
+	**/
 	function appendData( data : String ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Inserts the specified characters, at the specified offset, in the `CharacterData.data` string; when this method returns, `data` contains the modified `DOMString`.
+	**/
 	function insertData( offset : Int, data : String ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Removes the specified amount of characters, starting at the specified offset, from the `CharacterData.data` string; when this method returns, `data` contains the shortened `DOMString`.
+	**/
 	function deleteData( offset : Int, count : Int ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Replaces the specified amount of characters, starting at the specified offset, with the specified `DOMString`; when this method returns, `data` contains the modified `DOMString`.
+	**/
 	function replaceData( offset : Int, count : Int, data : String ) : Void;
 	function remove() : Void;
 }

+ 23 - 0
std/js/html/Client.hx

@@ -24,13 +24,36 @@
 
 package js.html;
 
+/**
+	The `Client` interface of the ServiceWorker API represents the scope of a service worker client. A service worker client is either a document in a browser context or a `SharedWorker`, which is controlled by an active worker. A client object acts as a snapshot representation of its associated service worker client in the scope of a service worker.
+
+	Documentation [Client](https://developer.mozilla.org/en-US/docs/Web/API/Client) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/Client$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/Client>
+**/
 @:native("Client")
 extern class Client
 {
+	
+	/**
+		The URL of the current service worker client.
+	**/
 	var url(default,null) : String;
+	
+	/**
+		Indicates the type of browsing context of the current client. This value can be one of `auxiliary`, `top-level`, `nested`, or `none`.
+	**/
 	var frameType(default,null) : FrameType;
+	
+	/**
+		Returns the universally unique identifier of the `Client` object.
+	**/
 	var id(default,null) : String;
 	
 	/** @throws DOMError */
+	
+	/**
+		Allows a service worker to send a message to a `ServiceWorkerClient`.
+	**/
 	function postMessage( message : Dynamic, ?transfer : Array<Dynamic> ) : Void;
 }

+ 19 - 0
std/js/html/Clients.hx

@@ -24,10 +24,29 @@
 
 package js.html;
 
+/**
+	The `Clients` interface of the Service Workers API represents a container for a list of `Client` objects.
+
+	Documentation [Clients](https://developer.mozilla.org/en-US/docs/Web/API/Clients) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/Clients$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/Clients>
+**/
 @:native("Clients")
 extern class Clients
 {
+	
+	/**
+		Gets a service worker client matching a given `id` and returns it in a `Promise`.
+	**/
 	function get( id : String ) : Promise<Dynamic>;
+	
+	/**
+		Gets a list of service worker clients and returns them in a `Promise`. Include the `options` parameter to return all service worker clients whose origin is the same as the associated service worker's origin. If `options` are not included, the method returns only the service worker clients controlled by the service worker. 
+	**/
 	function matchAll( ?options : ClientQueryOptions ) : Promise<Array<Client>>;
+	
+	/**
+		Allows an active Service Worker to set itself as the active worker for a client page when the worker and the page are in the same scope. 
+	**/
 	function claim() : Promise<Void>;
 }

+ 11 - 0
std/js/html/ClipboardEvent.hx

@@ -24,9 +24,20 @@
 
 package js.html;
 
+/**
+	The `ClipboardEvent` interface represents events providing information related to modification of the clipboard, that is `cut`, `copy`, and `paste` events.
+
+	Documentation [ClipboardEvent](https://developer.mozilla.org/en-US/docs/Web/API/ClipboardEvent) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/ClipboardEvent$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/ClipboardEvent>
+**/
 @:native("ClipboardEvent")
 extern class ClipboardEvent extends Event
 {
+	
+	/**
+		Is a `DataTransfer` object containing the data affected by the user-initiated `cut`, `copy`, or `paste` operation, along with its MIME type.
+	**/
 	var clipboardData(default,null) : DataTransfer;
 	
 	/** @throws DOMError */

+ 134 - 0
std/js/html/CloseEvent.hx

@@ -24,11 +24,145 @@
 
 package js.html;
 
+/**
+	A `CloseEvent` is sent to clients using WebSockets when the connection is closed. This is delivered to the listener indicated by the `WebSocket` object's `onclose` attribute.
+
+	Documentation [CloseEvent](https://developer.mozilla.org/en-US/docs/Web/API/CloseEvent) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CloseEvent$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CloseEvent>
+**/
 @:native("CloseEvent")
 extern class CloseEvent extends Event
 {
+	
+	/**
+		Returns a `Boolean` that Indicates whether or not the connection was cleanly closed.
+	**/
 	var wasClean(default,null) : Bool;
+	
+	/**
+		Returns an <code>unsigned short</code> containing the close code send by the server. The following values are permitted status codes.
+		 <table id="Status_codes" class="standard-table">
+		  
+		   <tr>
+		    <td class="header">Status code</td>
+		    <td class="header">Name</td>
+		    <td class="header">Description</td>
+		   </tr>
+		   <tr>
+		    <td><code>0</code>–<code>999</code></td>
+		    <td> </td>
+		    <td>Reserved and not used.</td>
+		   </tr>
+		   <tr>
+		    <td><code>1000</code></td>
+		    <td><code>CLOSE_NORMAL</code></td>
+		    <td>Normal closure; the connection successfully completed whatever purpose for which it was created.</td>
+		   </tr>
+		   <tr>
+		    <td><code>1001</code></td>
+		    <td><code>CLOSE_GOING_AWAY</code></td>
+		    <td>The endpoint is going away, either because of a server failure or because the browser is navigating away from the page that opened the connection.</td>
+		   </tr>
+		   <tr>
+		    <td><code>1002</code></td>
+		    <td><code>CLOSE_PROTOCOL_ERROR</code></td>
+		    <td>The endpoint is terminating the connection due to a protocol error.</td>
+		   </tr>
+		   <tr>
+		    <td><code>1003</code></td>
+		    <td><code>CLOSE_UNSUPPORTED</code></td>
+		    <td>The connection is being terminated because the endpoint received data of a type it cannot accept (for example, a text-only endpoint received binary data).</td>
+		   </tr>
+		   <tr>
+		    <td><code>1004</code></td>
+		    <td> </td>
+		    <td>Reserved. A meaning might be defined in the future.</td>
+		   </tr>
+		   <tr>
+		    <td><code>1005</code></td>
+		    <td><code>CLOSE_NO_STATUS</code></td>
+		    <td>Reserved.  Indicates that no status code was provided even though one was expected.</td>
+		   </tr>
+		   <tr>
+		    <td><code>1006</code></td>
+		    <td><code>CLOSE_ABNORMAL</code></td>
+		    <td>Reserved. Used to indicate that a connection was closed abnormally (that is, with no close frame being sent) when a status code is expected.</td>
+		   </tr>
+		   <tr>
+		    <td><code>1007</code></td>
+		    <td>Unsupported Data</td>
+		    <td>The endpoint is terminating the connection because a message was received that contained inconsistent data (e.g., non-UTF-8 data within a text message).</td>
+		   </tr>
+		   <tr>
+		    <td><code>1008</code></td>
+		    <td>Policy Violation</td>
+		    <td>The endpoint is terminating the connection because it received a message that violates its policy. This is a generic status code, used when codes 1003 and 1009 are not suitable.</td>
+		   </tr>
+		   <tr>
+		    <td><code>1009</code></td>
+		    <td><code>CLOSE_TOO_LARGE</code></td>
+		    <td>The endpoint is terminating the connection because a data frame was received that is too large.</td>
+		   </tr>
+		   <tr>
+		    <td><code>1010</code></td>
+		    <td>Missing Extension</td>
+		    <td>The client is terminating the connection because it expected the server to negotiate one or more extension, but the server didn't.</td>
+		   </tr>
+		   <tr>
+		    <td><code>1011</code></td>
+		    <td>Internal Error</td>
+		    <td>The server is terminating the connection because it encountered an unexpected condition that prevented it from fulfilling the request.</td>
+		   </tr>
+		   <tr>
+		    <td><code>1012</code></td>
+		    <td>Service Restart</td>
+		    <td>The server is terminating the connection because it is restarting. [Ref]</td>
+		   </tr>
+		   <tr>
+		    <td><code>1013</code></td>
+		    <td>Try Again Later</td>
+		    <td>The server is terminating the connection due to a temporary condition, e.g. it is overloaded and is casting off some of its clients. [Ref]</td>
+		   </tr>
+		   <tr>
+		    <td><code>1014</code></td>
+		    <td> </td>
+		    <td>Reserved for future use by the WebSocket standard.</td>
+		   </tr>
+		   <tr>
+		    <td><code>1015</code></td>
+		    <td>TLS Handshake</td>
+		    <td>Reserved. Indicates that the connection was closed due to a failure to perform a TLS handshake (e.g., the server certificate can't be verified).</td>
+		   </tr>
+		   <tr>
+		    <td><code>1016</code>–<code>1999</code></td>
+		    <td> </td>
+		    <td>Reserved for future use by the WebSocket standard.</td>
+		   </tr>
+		   <tr>
+		    <td><code>2000</code>–<code>2999</code></td>
+		    <td> </td>
+		    <td>Reserved for use by WebSocket extensions.</td>
+		   </tr>
+		   <tr>
+		    <td><code>3000</code>–<code>3999</code></td>
+		    <td> </td>
+		    <td>Available for use by libraries and frameworks. May not be used by applications. Available for registration at the IANA via first-come, first-serve.</td>
+		   </tr>
+		   <tr>
+		    <td><code>4000</code>–<code>4999</code></td>
+		    <td> </td>
+		    <td>Available for use by applications.</td>
+		   </tr>
+		  
+		 </table>
+		 
+	**/
 	var code(default,null) : Int;
+	
+	/**
+		Returns a `DOMString` indicating the reason the server closed the connection. This is specific to the particular server and sub-protocol.
+	**/
 	var reason(default,null) : String;
 	
 	/** @throws DOMError */

+ 7 - 0
std/js/html/Comment.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `Comment` interface represents textual notations within markup; although it is generally not visually shown, such comments are available to be read in the source view. Comments are represented in HTML and XML as content between '`!--`' and '`--`'. In XML, the character sequence '`--`' cannot be used within a comment.
+
+	Documentation [Comment](https://developer.mozilla.org/en-US/docs/Web/API/Comment) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/Comment$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/Comment>
+**/
 @:native("Comment")
 extern class Comment extends CharacterData
 {

+ 7 - 0
std/js/html/CompositionEvent.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The DOM `CompositionEvent` represents events that occur due to the user indirectly entering text.
+
+	Documentation [CompositionEvent](https://developer.mozilla.org/en-US/docs/Web/API/CompositionEvent) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CompositionEvent$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CompositionEvent>
+**/
 @:native("CompositionEvent")
 extern class CompositionEvent extends UIEvent
 {

+ 93 - 0
std/js/html/Console.hx

@@ -24,29 +24,122 @@
 
 package js.html;
 
+/**
+	The `Console` object provides access to the browser's debugging console (e.g., the Web Console in Firefox). The specifics of how it works vary from browser to browser, but there is a de facto set of features that are typically provided.
+
+	Documentation [Console](https://developer.mozilla.org/en-US/docs/Web/API/Console) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/Console$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/Console>
+**/
 @:native("Console")
 extern class Console
 {
+	
+	/**
+		For general output of logging information. You may use string substitution and additional arguments with this method.
+	**/
 	function log( data : haxe.extern.Rest<Dynamic> ) : Void;
+	
+	/**
+		Informative logging information. You may use string substitution and additional arguments with this method.
+	**/
 	function info( data : haxe.extern.Rest<Dynamic> ) : Void;
+	
+	/**
+		Outputs a warning message. You may use string substitution and additional arguments with this method.
+	**/
 	function warn( data : haxe.extern.Rest<Dynamic> ) : Void;
+	
+	/**
+		Outputs an error message. You may use string substitution and additional arguments with this method.
+	**/
 	function error( data : haxe.extern.Rest<Dynamic> ) : Void;
+	
+	/**
+		An alias for `error()`
+	**/
 	function exception( data : haxe.extern.Rest<Dynamic> ) : Void;
+	
+	/**
+		An alias for `log()`
+	**/
 	function debug( data : haxe.extern.Rest<Dynamic> ) : Void;
+	
+	/**
+		Displays tabular data as a table.
+	**/
 	function table( data : haxe.extern.Rest<Dynamic> ) : Void;
+	
+	/**
+		Outputs a stack trace.
+	**/
 	function trace() : Void;
+	
+	/**
+		Displays an interactive listing of the properties of a specified JavaScript object. This listing lets you use disclosure triangles to examine the contents of child objects.
+	**/
 	function dir( data : haxe.extern.Rest<Dynamic> ) : Void;
+	
+	/**
+		
+		 Displays an XML/HTML Element representation of the specified object if possible or the JavaScript Object view if it is not.
+		 
+	**/
 	function dirxml( data : haxe.extern.Rest<Dynamic> ) : Void;
+	
+	/**
+		Creates a new inline group, indenting all following output by another level. To move back out a level, call `groupEnd()`.
+	**/
 	function group( data : haxe.extern.Rest<Dynamic> ) : Void;
+	
+	/**
+		Creates a new inline group, indenting all following output by another level; unlike `group()`, this starts with the inline group collapsed, requiring the use of a disclosure button to expand it. To move back out a level, call `groupEnd()`.
+	**/
 	function groupCollapsed( data : haxe.extern.Rest<Dynamic> ) : Void;
+	
+	/**
+		Exits the current inline group.
+	**/
 	function groupEnd( data : haxe.extern.Rest<Dynamic> ) : Void;
+	
+	/**
+		Starts a timer with a name specified as an input parameter. Up to 10,000 simultaneous timers can run on a given page.
+	**/
 	function time( ?time : Dynamic ) : Void;
+	
+	/**
+		Stops the specified timer and logs the elapsed time in seconds since its start.
+	**/
 	function timeEnd( ?time : Dynamic ) : Void;
+	
+	/**
+		Adds a marker to the browser's Timeline or Waterfall tool.
+	**/
 	function timeStamp( ?data : Dynamic ) : Void;
+	
+	/**
+		Starts the browser's build-in profiler (for example, the Firefox performance tool). You can specify an optional name for the profile.
+	**/
 	function profile( data : haxe.extern.Rest<Dynamic> ) : Void;
+	
+	/**
+		Stops the profiler. You can see the resulting profile in the browser's performance tool (for example, the Firefox performance tool).
+	**/
 	function profileEnd( data : haxe.extern.Rest<Dynamic> ) : Void;
+	
+	/**
+		Log a message and stack trace to console if first argument is `false`.
+	**/
 	function assert( condition : Bool, data : haxe.extern.Rest<Dynamic> ) : Void;
+	
+	/**
+		Log the number of times this line has been called with the given label.
+	**/
 	function count( data : haxe.extern.Rest<Dynamic> ) : Void;
+	
+	/**
+		Clear the console.
+	**/
 	function clear() : Void;
 	function markTimeline() : Void;
 	function timeline() : Void;

+ 15 - 0
std/js/html/ContentElement.hx

@@ -24,10 +24,25 @@
 
 package js.html;
 
+/**
+	The `HTMLContentElement` interface represents a `content` HTML Element, which is used in Shadow DOM.
+
+	Documentation [HTMLContentElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLContentElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLContentElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLContentElement>
+**/
 @:native("HTMLContentElement")
 extern class ContentElement extends Element
 {
+	
+	/**
+		Is a `DOMString` that reflects the `select` HTML attribute. The value is a comma-separated list of CSS selectors that select the content to insert in place of the `content` element.
+	**/
 	var select : String;
 	
+	
+	/**
+		Returns a static `NodeList` of the `distributed nodes` associated with this `content` element. 
+	**/
 	function getDistributedNodes() : NodeList;
 }

+ 35 - 0
std/js/html/Coordinates.hx

@@ -24,15 +24,50 @@
 
 package js.html;
 
+/**
+	The `Coordinates` interface represents the position and altitude of the device on Earth, as well as the accuracy with which these properties are calculated.
+
+	Documentation [Coordinates](https://developer.mozilla.org/en-US/docs/Web/API/Coordinates) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/Coordinates$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/Coordinates>
+**/
 @:native("Coordinates")
 extern class Coordinates
 {
+	
+	/**
+		Returns a `double` representing the position's latitude in decimal degrees.
+	**/
 	var latitude(default,null) : Float;
+	
+	/**
+		Returns a `double` representing the position's longitude in decimal degrees.
+	**/
 	var longitude(default,null) : Float;
+	
+	/**
+		Returns a `double` representing the position's altitude in metres, relative to sea level. This value can be `null` if the implementation cannot provide the data.
+	**/
 	var altitude(default,null) : Float;
+	
+	/**
+		Returns a `double` representing the accuracy of the `latitude` and `longitude` properties, expressed in meters.
+	**/
 	var accuracy(default,null) : Float;
+	
+	/**
+		Returns a `double` representing the accuracy of the `altitude` expressed in meters. This value can be `null`.
+	**/
 	var altitudeAccuracy(default,null) : Float;
+	
+	/**
+		Returns a `double` representing the direction in which the device is traveling. This value, specified in degrees, indicates how far off from heading true north the device is. `0` degrees represents true north, and the direction is determined clockwise (which means that east is `90` degrees and west is `270` degrees). If `speed` is `0`, `heading` is `NaN`. If the device is unable to provide `heading` information, this value is `null`.
+	**/
 	var heading(default,null) : Float;
+	
+	/**
+		Returns a `double` representing the velocity of the device in meters per second. This value can be `null`.
+	**/
 	var speed(default,null) : Float;
 	
 }

+ 11 - 0
std/js/html/Crypto.hx

@@ -24,9 +24,20 @@
 
 package js.html;
 
+/**
+	The `Crypto` interface represents basic cryptography features available in the current context. It allows access to a cryptographically strong random number generator and to cryptographic primitives.
+
+	Documentation [Crypto](https://developer.mozilla.org/en-US/docs/Web/API/Crypto) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/Crypto$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/Crypto>
+**/
 @:native("Crypto")
 extern class Crypto
 {
+	
+	/**
+		Returns a `SubtleCrypto` object providing access to common cryptographic primitives, like hashing, signing, encryption or decryption.
+	**/
 	var subtle(default,null) : SubtleCrypto;
 	
 	/** @throws DOMError */

+ 23 - 0
std/js/html/CryptoKey.hx

@@ -24,12 +24,35 @@
 
 package js.html;
 
+/**
+	The `CryptoKey` interface represents a cryptographic key derived from a specific key algorithm.
+
+	Documentation [CryptoKey](https://developer.mozilla.org/en-US/docs/Web/API/CryptoKey) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CryptoKey$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CryptoKey>
+**/
 @:native("CryptoKey")
 extern class CryptoKey
 {
+	
+	/**
+		Returns an enumerated value representing the type of the key, a secret key (for symmetric algorithm), a public or a private key (for an asymmetric algorithm)
+	**/
 	var type(default,null) : String;
+	
+	/**
+		Returns a `Boolean` indicating if the raw information may be exported to the application or not.
+	**/
 	var extractable(default,null) : Bool;
+	
+	/**
+		Returns an opaque object representing a particular cipher the key has to be used with.
+	**/
 	var algorithm(default,null) : Dynamic;
+	
+	/**
+		Returns an array of enumerated values indicating what the key can be used for.
+	**/
 	var usages(default,null) : Array<String>;
 	
 }

+ 17 - 0
std/js/html/CustomEvent.hx

@@ -24,13 +24,30 @@
 
 package js.html;
 
+/**
+	This interface inherits properties from its parent, `Event`:
+
+	Documentation [CustomEvent](https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent>
+**/
 @:native("CustomEvent")
 extern class CustomEvent extends Event
 {
+	
+	/**
+		Any data passed when initializing the event.
+	**/
 	var detail(default,null) : Dynamic;
 	
 	/** @throws DOMError */
 	function new( type : String, ?eventInitDict : CustomEventInit ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		
+		 Initializes a `CustomEvent` object. If the event has already being dispatched, this method does nothing.
+		 
+	**/
 	function initCustomEvent( type : String, canBubble : Bool, cancelable : Bool, detail : Dynamic ) : Void;
 }

+ 11 - 0
std/js/html/DListElement.hx

@@ -24,9 +24,20 @@
 
 package js.html;
 
+/**
+	The `HTMLDListElement` interface provides special properties (beyond those of the regular `HTMLElement` interface it also has available to it by inheritance) for manipulating definition list elements.
+
+	Documentation [HTMLDListElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLDListElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLDListElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLDListElement>
+**/
 @:native("HTMLDListElement")
 extern class DListElement extends Element
 {
+	
+	/**
+		Is a `Boolean` indicating that spacing between list items should be reduced.
+	**/
 	var compact : Bool;
 	
 }

+ 23 - 0
std/js/html/DOMElement.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `Element` interface represents an object of a `Document`. This interface describes methods and properties common to all kinds of elements. Specific behaviors are described in interfaces which inherit from `Element` but add additional functionality.
+
+	Documentation [Element](https://developer.mozilla.org/en-US/docs/Web/API/Element) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/Element$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/Element>
+**/
 @:native("Element")
 extern class DOMElement extends Node
 {
@@ -180,6 +187,10 @@ extern class DOMElement extends Node
 	function getElementsByTagNameNS( namespace_ : String, localName : String ) : HTMLCollection;
 	function getElementsByClassName( classNames : String ) : HTMLCollection;
 	/** @throws DOMError */
+	
+	/**
+		Designates a specific element as the capture target of future `PointerEvent`.
+	**/
 	function setPointerCapture( pointerId : Int ) : Void;
 	/** @throws DOMError */
 	function releasePointerCapture( pointerId : Int ) : Void;
@@ -217,11 +228,23 @@ extern class DOMElement extends Node
 	function querySelectorAll( selectors : String ) : NodeList;
 	/** @throws DOMError */
 	function createShadowRoot() : ShadowRoot;
+	
+	/**
+		…
+	**/
 	function getDestinationInsertionPoints() : NodeList;
 	/** @throws DOMError */
 	function requestFullscreen( ?options : Dynamic ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		A shortcut method to create and run an animation on an element. Returns the created Animation object instance.
+	**/
 	function animate( frames : Dynamic, ?options : haxe.extern.EitherType<Float,Dynamic/*MISSING KeyframeAnimationOptions*/> ) : Animation;
+	
+	/**
+		Returns an array of Animation objects currently active on the element.
+	**/
 	function getAnimations() : Array<Animation>;
 	function remove() : Void;
 	/** @throws DOMError */

+ 11 - 0
std/js/html/DOMError.hx

@@ -24,9 +24,20 @@
 
 package js.html;
 
+/**
+	The `DOMError` interface describes an error object that contains an error name.
+
+	Documentation [DOMError](https://developer.mozilla.org/en-US/docs/Web/API/DOMError) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DOMError$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DOMError>
+**/
 @:native("DOMError")
 extern class DOMError
 {
+	
+	/**
+		Returns a `DOMString` representing one of the error type names (see below).
+	**/
 	var name(default,null) : String;
 	var message(default,null) : String;
 	

+ 7 - 0
std/js/html/DOMException.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `DOMException` interface represents an abnormal event (called an exception) which occurs as a result of calling a method or accessing a property of a web API. This is basically how error conditions are described in web APIs.
+
+	Documentation [DOMException](https://developer.mozilla.org/en-US/docs/Web/API/DOMException) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DOMException$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DOMException>
+**/
 @:native("DOMException")
 extern class DOMException
 {

+ 23 - 0
std/js/html/DOMImplementation.hx

@@ -24,14 +24,37 @@
 
 package js.html;
 
+/**
+	The `DOMImplementation` interface represent an object providing methods which are not dependent on any particular document. Such an object is returned by the `Document.implementation` property.
+
+	Documentation [DOMImplementation](https://developer.mozilla.org/en-US/docs/Web/API/DOMImplementation) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DOMImplementation$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DOMImplementation>
+**/
 @:native("DOMImplementation")
 extern class DOMImplementation
 {
+	
+	/**
+		Returns a `Boolean` indicating if a given feature is supported or not. This function is unreliable and kept for compatibility purpose alone: except for SVG-related queries, it always returns `true`. Old browsers are very inconsistent in their behavior.
+	**/
 	function hasFeature( feature : String, version : String ) : Bool;
 	/** @throws DOMError */
+	
+	/**
+		Creates and returns a `DocumentType`.
+	**/
 	function createDocumentType( qualifiedName : String, publicId : String, systemId : String ) : DocumentType;
 	/** @throws DOMError */
+	
+	/**
+		Creates and returns an `XMLDocument`.
+	**/
 	function createDocument( namespace_ : String, qualifiedName : String, ?doctype : DocumentType ) : HTMLDocument;
 	/** @throws DOMError */
+	
+	/**
+		Creates and returns an HTML `Document`.
+	**/
 	function createHTMLDocument( ?title : String ) : HTMLDocument;
 }

+ 51 - 0
std/js/html/DOMMatrix.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `DOMMatrix` interface represents 4x4 matrices, suitable for 2D and 3D operations.
+
+	Documentation [DOMMatrix](https://developer.mozilla.org/en-US/docs/Web/API/DOMMatrix) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DOMMatrix$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DOMMatrix>
+**/
 @:native("DOMMatrix")
 extern class DOMMatrix extends DOMMatrixReadOnly
 {
@@ -36,16 +43,60 @@ extern class DOMMatrix extends DOMMatrixReadOnly
 	function new( numberSequence : Array<Float> ) : Void;
 	function multiplySelf( other : DOMMatrix ) : DOMMatrix;
 	function preMultiplySelf( other : DOMMatrix ) : DOMMatrix;
+	
+	/**
+		Returns itself, a `DOMMatrix`, with its new content being the result of the matrix being translated by the given vector.
+	**/
 	function translateSelf( tx : Float, ty : Float, ?tz : Float = 0.0 ) : DOMMatrix;
+	
+	/**
+		Returns itself, a `DOMMatrix`, with its new content being the result of the matrix x and y dimensions being scaled by the given factor, centered on the origin given.
+	**/
 	function scaleSelf( scale : Float, ?originX : Float = 0.0, ?originY : Float = 0.0 ) : DOMMatrix;
+	
+	/**
+		Returns itself, a `DOMMatrix`, with its new content being the result of the matrix x, y and z dimension being scaled by the given factor, centered on the origin given.
+	**/
 	function scale3dSelf( scale : Float, ?originX : Float = 0.0, ?originY : Float = 0.0, ?originZ : Float = 0.0 ) : DOMMatrix;
+	
+	/**
+		Returns itself, a `DOMMatrix`, with its new content being the result of the matrix x, y and z dimension being scaled by the given factor for each dimension, centered on the origin given.
+	**/
 	function scaleNonUniformSelf( scaleX : Float, ?scaleY : Float = 1.0, ?scaleZ : Float = 1.0, ?originX : Float = 0.0, ?originY : Float = 0.0, ?originZ : Float = 0.0 ) : DOMMatrix;
+	
+	/**
+		Returns itself, a `DOMMatrix`, with its new content being the result of the original matrix being rotated by the given angle, with the rotation centered on the origin given.
+	**/
 	function rotateSelf( angle : Float, ?originX : Float = 0.0, ?originY : Float = 0.0 ) : DOMMatrix;
+	
+	/**
+		Returns itself, a `DOMMatrix`, with its new content being the result of the original matrix being rotated by the angle between the given vector and (1,0), centered on the origin given.
+	**/
 	function rotateFromVectorSelf( x : Float, y : Float ) : DOMMatrix;
+	
+	/**
+		Returns itself, a `DOMMatrix`, with its new content being the result of the original matrix being rotated by the given angle and the give vector.
+	**/
 	function rotateAxisAngleSelf( x : Float, y : Float, z : Float, angle : Float ) : DOMMatrix;
+	
+	/**
+		Returns itself, a `DOMMatrix`, with its new content being the result of the original matrix being skewed along the x-axis by the given factor.
+	**/
 	function skewXSelf( sx : Float ) : DOMMatrix;
+	
+	/**
+		Returns itself, a `DOMMatrix`, with its new content being the result of the original matrix being skewed along the y-axis by the given factor.
+	**/
 	function skewYSelf( sy : Float ) : DOMMatrix;
+	
+	/**
+		Returns itself,  a `DOMMatrix`, with its new content being the result of the original matrix being inverted. If the matrix cannot be inverted, all its components are set to `NaN` and `is2D()` returns `false`.
+	**/
 	function invertSelf() : DOMMatrix;
 	/** @throws DOMError */
+	
+	/**
+		Returns itself, a `DOMMatrix`, with its describing the matrix representing the same transformation as the CSS `transform` functions given in parameter.
+	**/
 	function setMatrixValue( transformList : String ) : DOMMatrix;
 }

+ 114 - 0
std/js/html/DOMMatrixReadOnly.hx

@@ -24,15 +24,65 @@
 
 package js.html;
 
+/**
+	The `DOMMatrixReadOnly` interface represents 4x4 matrices, suitable for 2D and 3D operations. If this interface defines only read-only matrices, the `DOMMatrix` interface which inherits from it, add all the properties and the methods to allow to have modifiable matrices.
+
+	Documentation [DOMMatrixReadOnly](https://developer.mozilla.org/en-US/docs/Web/API/DOMMatrixReadOnly) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DOMMatrixReadOnly$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DOMMatrixReadOnly>
+**/
 @:native("DOMMatrixReadOnly")
 extern class DOMMatrixReadOnly
 {
+	
+	/**
+		Are <code>double</code> representing each component of a 4x4 matrix needed for 2D rotations and translations. They are aliases for some components of the 4x4 matrix:
+		 <table class="standard-table">
+		  
+		   <tr>
+		    2D
+		    3D equivalent
+		   </tr>
+		  
+		  
+		   <tr>
+		    <td><code>a</code></td>
+		    <td><code>m11</code></td>
+		   </tr>
+		   <tr>
+		    <td><code>b</code></td>
+		    <td><code>m12</code></td>
+		   </tr>
+		   <tr>
+		    <td><code>c</code></td>
+		    <td><code>m21</code></td>
+		   </tr>
+		   <tr>
+		    <td><code>d</code></td>
+		    <td><code>m22</code></td>
+		   </tr>
+		   <tr>
+		    <td><code>e</code></td>
+		    <td><code>m41</code></td>
+		   </tr>
+		   <tr>
+		    <td><code>f</code></td>
+		    <td><code>m42</code></td>
+		   </tr>
+		  
+		 </table>
+		 They are read-only, but their counterpart, with the same name, in <code>DOMMatrix</code> aren't.
+	**/
 	var a(default,null) : Float;
 	var b(default,null) : Float;
 	var c(default,null) : Float;
 	var d(default,null) : Float;
 	var e(default,null) : Float;
 	var f(default,null) : Float;
+	
+	/**
+		Are `double` representing each component of a 4x4 matrix. They are read-only, but their counterpart, with the same name, in `DOMMatrix` aren't.
+	**/
 	var m11(default,null) : Float;
 	var m12(default,null) : Float;
 	var m13(default,null) : Float;
@@ -49,25 +99,89 @@ extern class DOMMatrixReadOnly
 	var m42(default,null) : Float;
 	var m43(default,null) : Float;
 	var m44(default,null) : Float;
+	
+	/**
+		Is a `Boolean` indicating if the matrix contains a 2D matrix and only accept 2D transformations.
+	**/
 	var is2D(default,null) : Bool;
 	var identity(default,null) : Bool;
 	
+	
+	/**
+		Returns a `DOMMatrix` containing a new matrix being the result of the matrix being translated by the given vector. The original matrix is not modified.
+	**/
 	function translate( tx : Float, ty : Float, ?tz : Float = 0.0 ) : DOMMatrix;
+	
+	/**
+		Returns a `DOMMatrix` containing a new matrix being the result of the matrix x and y dimensions being scaled by the given factor, centered on the origin given. The original matrix is not modified.
+	**/
 	function scale( scale : Float, ?originX : Float = 0.0, ?originY : Float = 0.0 ) : DOMMatrix;
+	
+	/**
+		Returns a `DOMMatrix` containing a new matrix being the result of the matrix x, y and z dimension being scaled by the given factor, centered on the origin given. The original matrix is not modified.
+	**/
 	function scale3d( scale : Float, ?originX : Float = 0.0, ?originY : Float = 0.0, ?originZ : Float = 0.0 ) : DOMMatrix;
+	
+	/**
+		Returns a `DOMMatrix` containing a new matrix being the result of the matrix x, y and z dimension being scaled by the given factor for each dimension, centered on the origin given. The original matrix is not modified.
+	**/
 	function scaleNonUniform( scaleX : Float, ?scaleY : Float = 1.0, ?scaleZ : Float = 1.0, ?originX : Float = 0.0, ?originY : Float = 0.0, ?originZ : Float = 0.0 ) : DOMMatrix;
+	
+	/**
+		Returns a `DOMMatrix` containing a new matrix being the result of the original matrix being rotated by the given angle, with the rotation centered on the origin given. The original matrix is not modified.
+	**/
 	function rotate( angle : Float, ?originX : Float = 0.0, ?originY : Float = 0.0 ) : DOMMatrix;
+	
+	/**
+		Returns a `DOMMatrix` containing a new matrix being the result of the original matrix being rotated by the angle between the given vector and (1,0), centered on the origin given. The original matrix is not modified.
+	**/
 	function rotateFromVector( x : Float, y : Float ) : DOMMatrix;
+	
+	/**
+		Returns a `DOMMatrix` containing a new matrix being the result of the original matrix being rotated by the given angle and the give vector. The original matrix is not modified.
+	**/
 	function rotateAxisAngle( x : Float, y : Float, z : Float, angle : Float ) : DOMMatrix;
+	
+	/**
+		Returns a `DOMMatrix` containing a new matrix being the result of the original matrix being skewed along the x-axis by the given factor. The original matrix is not modified.
+	**/
 	function skewX( sx : Float ) : DOMMatrix;
+	
+	/**
+		Returns a `DOMMatrix` containing a new matrix being the result of the original matrix being skewed along the y-axis by the given factor. The original matrix is not modified.
+	**/
 	function skewY( sy : Float ) : DOMMatrix;
+	
+	/**
+		Returns a `DOMMatrix` containing a new matrix being the result of the original matrix being multiplied by the given `DOMMatrix`. The original matrix is not modified.
+	**/
 	function multiply( other : DOMMatrix ) : DOMMatrix;
+	
+	/**
+		Returns a `DOMMatrix` containing a new matrix being the result of the original matrix being flipped around the x-axis, that is multiplied by the `DOMMatrix(-1, 0, 0, 1, 0, 0)`. The original matrix is not modified.
+	**/
 	function flipX() : DOMMatrix;
+	
+	/**
+		Returns a `DOMMatrix` containing a new matrix being the result of the original matrix being flipped around the y-axis, that is multiplied by the `DOMMatrix(1, 0, 0, -1, 0, 0)`. The original matrix is not modified.
+	**/
 	function flipY() : DOMMatrix;
 	function inverse() : DOMMatrix;
+	
+	/**
+		Returns a `DOMPoint` that is the point given in parameter multiplied by the matrix. Bot the original point and the matrix aren't modified.
+	**/
 	function transformPoint( ?point : DOMPointInit ) : DOMPoint;
 	/** @throws DOMError */
+	
+	/**
+		Returns a `Float32Array` containing the 6 components (`a`, `b`, `c`, `d`, `e`, `f`) in the case of a 2D matrix or the 16 components (`m11`, `m12`, `m13`, `m14`, `m21`, `m22`, `m23`, `m24`, `m31`, `m32`, `m33`, `m34`, `m41`, `m42`, `m43`, `m44`) for a 3D matrix.
+	**/
 	function toFloat32Array() : Float32Array;
 	/** @throws DOMError */
+	
+	/**
+		Returns a `Float64Array` containing the 6 components (`a`, `b`, `c`, `d`, `e`, `f`) in the case of a 2D matrix or the 16 components (`m11`, `m12`, `m13`, `m14`, `m21`, `m22`, `m23`, `m24`, `m31`, `m32`, `m33`, `m34`, `m41`, `m42`, `m43`, `m44`) for a 3D matrix.
+	**/
 	function toFloat64Array() : Float64Array;
 }

+ 7 - 0
std/js/html/DOMParser.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	`DOMParser` can parse XML or HTML source stored in a string into a DOM Document. `DOMParser` is specified in DOM Parsing and Serialization.
+
+	Documentation [DOMParser](https://developer.mozilla.org/en-US/docs/Web/API/DOMParser) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DOMParser$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DOMParser>
+**/
 @:native("DOMParser")
 extern class DOMParser
 {

+ 7 - 0
std/js/html/DOMPoint.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	A `DOMPoint` represents a 2D or 3D point in a coordinate system.
+
+	Documentation [DOMPoint](https://developer.mozilla.org/en-US/docs/Web/API/DOMPoint) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DOMPoint$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DOMPoint>
+**/
 @:native("DOMPoint")
 extern class DOMPoint extends DOMPointReadOnly
 {

+ 23 - 0
std/js/html/DOMPointReadOnly.hx

@@ -24,12 +24,35 @@
 
 package js.html;
 
+/**
+	The `DOMPointReadOnly` interface specifies the standard properties used by `DOMPoint` to define a 2D or 3D point in a coordinate system.
+
+	Documentation [DOMPointReadOnly](https://developer.mozilla.org/en-US/docs/Web/API/DOMPointReadOnly) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DOMPointReadOnly$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DOMPointReadOnly>
+**/
 @:native("DOMPointReadOnly")
 extern class DOMPointReadOnly
 {
+	
+	/**
+		The x coordinate of the `DOMPoint`.
+	**/
 	var x(default,null) : Float;
+	
+	/**
+		The y coordinate of the `DOMPoint`.
+	**/
 	var y(default,null) : Float;
+	
+	/**
+		The z coordinate of the `DOMPoint`.
+	**/
 	var z(default,null) : Float;
+	
+	/**
+		The perspective value of the `DOMPoint`.
+	**/
 	var w(default,null) : Float;
 	
 }

+ 7 - 0
std/js/html/DOMRect.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	A `DOMRect` represents a rectangle.
+
+	Documentation [DOMRect](https://developer.mozilla.org/en-US/docs/Web/API/DOMRect) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DOMRect$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DOMRect>
+**/
 @:native("DOMRect")
 extern class DOMRect extends DOMRectReadOnly
 {

+ 39 - 0
std/js/html/DOMRectReadOnly.hx

@@ -24,16 +24,55 @@
 
 package js.html;
 
+/**
+	The `DOMRectReadOnly` interface specifies the standard properties used by `DOMRect` to define a rectangle.
+
+	Documentation [DOMRectReadOnly](https://developer.mozilla.org/en-US/docs/Web/API/DOMRectReadOnly) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DOMRectReadOnly$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DOMRectReadOnly>
+**/
 @:native("DOMRectReadOnly")
 extern class DOMRectReadOnly
 {
+	
+	/**
+		The x coordinate of the `DOMRect`'s origin.
+	**/
 	var x(default,null) : Float;
+	
+	/**
+		The y coordinate of the `DOMRect`'s origin.
+	**/
 	var y(default,null) : Float;
+	
+	/**
+		The width of the `DOMRect`.
+	**/
 	var width(default,null) : Float;
+	
+	/**
+		The height of the `DOMRect`.
+	**/
 	var height(default,null) : Float;
+	
+	/**
+		Returns the top coordinate value of the `DOMRect` (usually the same as `y`.)
+	**/
 	var top(default,null) : Float;
+	
+	/**
+		Returns the right coordinate value of the `DOMRect` (usually the same as `x + width`).
+	**/
 	var right(default,null) : Float;
+	
+	/**
+		Returns the bottom coordinate value of the `DOMRect` (usually the same as y + height).
+	**/
 	var bottom(default,null) : Float;
+	
+	/**
+		Returns the left coordinate value of the `DOMRect` (usually the same as `x`).
+	**/
 	var left(default,null) : Float;
 	
 }

+ 19 - 0
std/js/html/DOMStringList.hx

@@ -24,11 +24,30 @@
 
 package js.html;
 
+/**
+	A type returned by some APIs which contains a list of DOMString (strings).
+
+	Documentation [DOMStringList](https://developer.mozilla.org/en-US/docs/Web/API/DOMStringList) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DOMStringList$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DOMStringList>
+**/
 @:native("DOMStringList")
 extern class DOMStringList implements ArrayAccess<String>
 {
+	
+	/**
+		Returns the length of the list,
+	**/
 	var length(default,null) : Int;
 	
+	
+	/**
+		Returns a `DOMString`.
+	**/
 	function item( index : Int ) : String;
+	
+	/**
+		Returns `Boolean` indicating if the given string is in the list
+	**/
 	function contains( string : String ) : Bool;
 }

+ 7 - 0
std/js/html/DOMStringMap.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	Used by the `dataset` HTML attribute to represent data for custom attributes added to elements.
+
+	Documentation [DOMStringMap](https://developer.mozilla.org/en-US/docs/Web/API/DOMStringMap) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DOMStringMap$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DOMStringMap>
+**/
 @:native("DOMStringMap")
 extern class DOMStringMap implements Dynamic<String>
 {

+ 31 - 0
std/js/html/DOMTokenList.hx

@@ -24,19 +24,50 @@
 
 package js.html;
 
+/**
+	The `DOMTokenList` interface represents a set of space-separated tokens. Such a set is returned by `Element.classList`, `HTMLLinkElement.relList`, `HTMLAnchorElement.relList` or `HTMLAreaElement.relList`. It is indexed beginning with `0` as with JavaScript `Array` objects. `DOMTokenList` is always case-sensitive.
+
+	Documentation [DOMTokenList](https://developer.mozilla.org/en-US/docs/Web/API/DOMTokenList) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DOMTokenList$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DOMTokenList>
+**/
 @:native("DOMTokenList")
 extern class DOMTokenList implements ArrayAccess<String>
 {
+	
+	/**
+		Is an `integer` representing the number of objects stored in the object.
+	**/
 	var length(default,null) : Int;
 	var value : String;
 	
+	
+	/**
+		Returns an item in the list by its index (or undefined if the number is greater than or equal to the length of the list, prior to `7.0` returned null)
+	**/
 	function item( index : Int ) : String;
 	/** @throws DOMError */
+	
+	/**
+		Returns `true` if the underlying string contains token, otherwise `false`
+	**/
 	function contains( token : String ) : Bool;
 	/** @throws DOMError */
+	
+	/**
+		Adds token to the underlying string
+	**/
 	function add( tokens : haxe.extern.Rest<String> ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Removes token from the underlying string
+	**/
 	function remove( tokens : haxe.extern.Rest<String> ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Removes token from string and returns false. If token doesn't exist it's added and the function returns true
+	**/
 	function toggle( token : String, ?force : Bool ) : Bool;
 }

+ 11 - 0
std/js/html/DataElement.hx

@@ -24,9 +24,20 @@
 
 package js.html;
 
+/**
+	The `HTMLDataElement` interface provides special properties (beyond the regular `HTMLElement` interface it also has available to it by inheritance) for manipulating `data` elements.
+
+	Documentation [HTMLDataElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLDataElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLDataElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLDataElement>
+**/
 @:native("HTMLDataElement")
 extern class DataElement extends Element
 {
+	
+	/**
+		Is a `DOMString` reflecting the `value` HTML attribute, containing a machine-readable form of the element's value.
+	**/
 	var value : String;
 	
 }

+ 11 - 0
std/js/html/DataListElement.hx

@@ -24,9 +24,20 @@
 
 package js.html;
 
+/**
+	The `HTMLDataListElement` interface provides special properties (beyond the `HTMLElement` object interface it also has available to it by inheritance) to manipulate `datalist` elements and their content.
+
+	Documentation [HTMLDataListElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLDataListElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLDataListElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLDataListElement>
+**/
 @:native("HTMLDataListElement")
 extern class DataListElement extends Element
 {
+	
+	/**
+		Is a `HTMLCollection` representing a collection of the contained option elements.
+	**/
 	var options(default,null) : HTMLCollection;
 	
 }

+ 43 - 0
std/js/html/DataTransfer.hx

@@ -24,24 +24,67 @@
 
 package js.html;
 
+/**
+	The `DataTransfer` object is used to hold the data that is being dragged during a drag and drop operation. It may hold one or more data items, each of one or more data types. For more information about drag and drop, see HTML Drag and Drop API.
+
+	Documentation [DataTransfer](https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer>
+**/
 @:native("DataTransfer")
 extern class DataTransfer
 {
+	
+	/**
+		Gets the type of drag-and-drop operation currently selected or sets the operation to a new type. The value must be `none`, `copy`, `link` or `move`.
+	**/
 	var dropEffect : String;
+	
+	/**
+		Provides all of the types of operations that are possible. Must be one of `none`, `copy`, `copyLink`, `copyMove`, `link`, `linkMove`, `move`, `all` or `uninitialized`.
+	**/
 	var effectAllowed : String;
+	
+	/**
+		An array of `DOMString` giving the formats that were set in the `dragstart` event.
+	**/
 	var types(default,null) : DOMStringList;
+	
+	/**
+		Contains a list of all the local files available on the data transfer. If the drag operation doesn't involve dragging files, this property is an empty list.
+	**/
 	var files(default,null) : FileList;
 	
 	/** @throws DOMError */
 	function new( eventType : String, isExternal : Bool ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Set the image to be used for dragging if a custom one is desired.
+	**/
 	function setDragImage( image : Element, x : Int, y : Int ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Retrieves the data for a given type, or an empty string if data for that type does not exist or the data transfer contains no data.
+	**/
 	function getData( format : String ) : String;
 	/** @throws DOMError */
+	
+	/**
+		Set the data for a given type. If data for the type does not exist, it is added at the end, such that the last item in the types list will be the new format. If data for the type already exists, the existing data is replaced in the same position.
+	**/
 	function setData( format : String, data : String ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Remove the data associated with a given type. The type argument is optional. If the type is empty or not specified, the data associated with all types is removed. If data for the specified type does not exist, or the data transfer contains no data, this method will have no effect.
+	**/
 	function clearData( ?format : String ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Sets the drag source to the given element.
+	**/
 	function addElement( element : Element ) : Void;
 }

+ 11 - 0
std/js/html/DedicatedWorkerGlobalScope.hx

@@ -24,9 +24,20 @@
 
 package js.html;
 
+/**
+	The `DedicatedWorkerGlobalScope` object (the `Worker` global scope) is accessible through the `self` keyword. Some additional global functions, namespaces objects, and constructors, not typically associated with the worker global scope, but available on it, are listed in the JavaScript Reference. See also: Functions available to workers.
+
+	Documentation [DedicatedWorkerGlobalScope](https://developer.mozilla.org/en-US/docs/Web/API/DedicatedWorkerGlobalScope) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DedicatedWorkerGlobalScope$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DedicatedWorkerGlobalScope>
+**/
 @:native("DedicatedWorkerGlobalScope")
 extern class DedicatedWorkerGlobalScope extends WorkerGlobalScope
 {
+	
+	/**
+		Is an `EventHandler` representing the code to be called when the `message` event is raised. These events are of type `MessageEvent` and will be called when the worker receives a message from the document that started it (i.e. from the `Worker.postMessage` method.)
+	**/
 	var onmessage : haxe.Constraints.Function;
 	
 	/** @throws DOMError */

+ 19 - 0
std/js/html/DeviceAcceleration.hx

@@ -24,11 +24,30 @@
 
 package js.html;
 
+/**
+	A `DeviceAcceleration` object provides information about the amount of acceleration the device is experiencing along all three axes.
+
+	Documentation [DeviceAcceleration](https://developer.mozilla.org/en-US/docs/Web/API/DeviceAcceleration) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DeviceAcceleration$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DeviceAcceleration>
+**/
 @:native("DeviceAcceleration")
 extern class DeviceAcceleration
 {
+	
+	/**
+		The amount of acceleration along the X axis. Read only.
+	**/
 	var x(default,null) : Float;
+	
+	/**
+		The amount of acceleration along the Y axis. Read only.
+	**/
 	var y(default,null) : Float;
+	
+	/**
+		The amount of acceleration along the Z axis. Read only.
+	**/
 	var z(default,null) : Float;
 	
 }

+ 23 - 0
std/js/html/DeviceMotionEvent.hx

@@ -24,12 +24,35 @@
 
 package js.html;
 
+/**
+	The `DeviceMotionEvent` provides web developers with information about the speed of changes for the device's position and orientation.
+
+	Documentation [DeviceMotionEvent](https://developer.mozilla.org/en-US/docs/Web/API/DeviceMotionEvent) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DeviceMotionEvent$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DeviceMotionEvent>
+**/
 @:native("DeviceMotionEvent")
 extern class DeviceMotionEvent extends Event
 {
+	
+	/**
+		An object giving the acceleration of the device on the three axis X, Y and Z. Acceleration is expressed in m/s2.
+	**/
 	var acceleration(default,null) : DeviceAcceleration;
+	
+	/**
+		An object giving the acceleration of the device on the three axis X, Y and Z with the effect of gravity. Acceleration is expressed in m/s2.
+	**/
 	var accelerationIncludingGravity(default,null) : DeviceAcceleration;
+	
+	/**
+		An object giving the rate of change of the device's orientation on the three orientation axis alpha, beta and gamma. Rotation rate is express in degrees per seconds.
+	**/
 	var rotationRate(default,null) : DeviceRotationRate;
+	
+	/**
+		A number representing the interval of time, in milliseconds, at which data is obtained from the device.
+	**/
 	var interval(default,null) : Float;
 	
 	/** @throws DOMError */

+ 23 - 0
std/js/html/DeviceOrientationEvent.hx

@@ -24,12 +24,35 @@
 
 package js.html;
 
+/**
+	The `DeviceOrientationEvent` provides web developers with information from the physical orientation of the device running the web page.
+
+	Documentation [DeviceOrientationEvent](https://developer.mozilla.org/en-US/docs/Web/API/DeviceOrientationEvent) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DeviceOrientationEvent$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DeviceOrientationEvent>
+**/
 @:native("DeviceOrientationEvent")
 extern class DeviceOrientationEvent extends Event
 {
+	
+	/**
+		A number representing the motion of the device around the z axis, express in degrees with values ranging from 0 to 360
+	**/
 	var alpha(default,null) : Float;
+	
+	/**
+		A number representing the motion of the device around the x axis, express in degrees with values ranging from -180 to 180. This represents a front to back motion of the device.
+	**/
 	var beta(default,null) : Float;
+	
+	/**
+		A number representing the motion of the device around the y axis, express in degrees with values ranging from -90 to 90. This represents a left to right motion of the device.
+	**/
 	var gamma(default,null) : Float;
+	
+	/**
+		A boolean that indicates whether or not the device is providing orientation data absolutely.
+	**/
 	var absolute(default,null) : Bool;
 	
 	/** @throws DOMError */

+ 7 - 0
std/js/html/DeviceRotationRate.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	A `DeviceRotationRate` object provides information about the rate at which the device is rotating around all three axes.
+
+	Documentation [DeviceRotationRate](https://developer.mozilla.org/en-US/docs/Web/API/DeviceRotationRate) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DeviceRotationRate$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DeviceRotationRate>
+**/
 @:native("DeviceRotationRate")
 extern class DeviceRotationRate
 {

+ 11 - 0
std/js/html/DivElement.hx

@@ -24,9 +24,20 @@
 
 package js.html;
 
+/**
+	The `HTMLDivElement` interface provides special properties (beyond the regular `HTMLElement` interface it also has available to it by inheritance) for manipulating div elements.
+
+	Documentation [HTMLDivElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLDivElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLDivElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLDivElement>
+**/
 @:native("HTMLDivElement")
 extern class DivElement extends Element
 {
+	
+	/**
+		Is a `DOMString` representing an enumerated property indicating alignment of the element's contents with respect to the surrounding context. The possible values are `"left"`, `"right"`, `"justify"`, and `"center"`.
+	**/
 	var align : String;
 	
 }

+ 273 - 0
std/js/html/Document.hx

@@ -24,45 +24,190 @@
 
 package js.html;
 
+/**
+	The `Document` interface represents any web page loaded in the browser and serves as an entry point into the web page's content, which is the DOM tree. The DOM tree includes elements such as `body` and `table`, among many others. It provides functionality global to the document, like how to obtain the page's URL and create new elements in the document.
+
+	Documentation [Document](https://developer.mozilla.org/en-US/docs/Web/API/Document) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/Document$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/Document>
+**/
 @:native("Document")
 extern class Document extends Node
 {
+	
+	/**
+		Returns the DOM implementation associated with the current document.
+	**/
 	var implementation(default,null) : DOMImplementation;
+	
+	/**
+		Returns the document location as a string.
+	**/
 	var URL(default,null) : String;
+	
+	/**
+		Returns the document location as a string.
+	**/
 	var documentURI(default,null) : String;
+	
+	/**
+		Indicates whether the document is rendered in quirks or strict mode.
+	**/
 	var compatMode(default,null) : String;
+	
+	/**
+		Returns the character set being used by the document.
+	**/
 	var characterSet(default,null) : String;
+	
+	/**
+		Alias of `Document.characterSet`. Use this property instead.
+	**/
 	var charset(default,null) : String;
+	
+	/**
+		Alias of `Document.characterSet`. Use this property instead.
+	**/
 	var inputEncoding(default,null) : String;
+	
+	/**
+		Returns the Content-Type from the MIME Header of the current document.
+	**/
 	var contentType(default,null) : String;
+	
+	/**
+		Returns the Document Type Definition (DTD) of the current document.
+	**/
 	var doctype(default,null) : DocumentType;
+	
+	/**
+		Returns the `Element` that is a direct child of the document. For HTML documents, this is normally the `html` element.
+	**/
 	var documentElement(default,null) : Element;
+	
+	/**
+		Returns the URI of the current document.
+	**/
 	var location(default,null) : Location;
+	
+	/**
+		Returns the URI of the page that linked to this page.
+	**/
 	var referrer(default,null) : String;
+	
+	/**
+		Returns the date on which the document was last modified.
+	**/
 	var lastModified(default,null) : String;
+	
+	/**
+		Returns loading status of the document.
+	**/
 	var readyState(default,null) : String;
+	
+	/**
+		Sets or gets title of the current document.
+	**/
 	var title : String;
+	
+	/**
+		Gets/sets directionality (rtl/ltr) of the document.
+	**/
 	var dir : String;
+	
+	/**
+		Returns a reference to the window object.
+	**/
 	var defaultView(default,null) : Window;
+	
+	/**
+		Returns the currently focused element.
+	**/
 	var activeElement(default,null) : Element;
+	
+	/**
+		Represents the event handling code for the `readystatechange` event.
+	**/
 	var onreadystatechange : haxe.Constraints.Function;
+	
+	/**
+		Represents the event handling code for the `wheel` event.
+	**/
 	var onwheel : haxe.Constraints.Function;
+	
+	/**
+		Represents the event handling code for the `copy` event.
+	**/
 	var oncopy : haxe.Constraints.Function;
+	
+	/**
+		Represents the event handling code for the `cut` event.
+	**/
 	var oncut : haxe.Constraints.Function;
+	
+	/**
+		Represents the event handling code for the `paste` event.
+	**/
 	var onpaste : haxe.Constraints.Function;
+	
+	/**
+		Represents the event handling code for the `beforescriptexecute` event.
+	**/
 	var onbeforescriptexecute : haxe.Constraints.Function;
+	
+	/**
+		Represents the event handling code for the `afterscriptexecute` event.
+	**/
 	var onafterscriptexecute : haxe.Constraints.Function;
 	var currentScript(default,null) : Element;
 	var fullscreenEnabled(default,null) : Bool;
 	var fullscreenElement(default,null) : Element;
+	
+	/**
+		Returns the element set as the target for mouse events while the pointer is locked. `null` if lock is pending, pointer is unlocked, or if the target is in another document.
+	**/
 	var pointerLockElement(default,null) : Element;
+	
+	/**
+		…
+	**/
 	var hidden(default,null) : Bool;
+	
+	/**
+		
+		 Returns a `string` denoting the visibility state of the document. Possible values are `visible`,  `hidden`,  `prerender`, and `unloaded`.
+		 
+	**/
 	var visibilityState(default,null) : VisibilityState;
+	
+	/**
+		Returns a list of the style sheet objects on the current document.
+	**/
 	var styleSheets(default,null) : StyleSheetList;
+	
+	/**
+		Returns which style sheet set is currently in use.
+	**/
 	var selectedStyleSheetSet : String;
+	
+	/**
+		Returns the name of the style sheet set that was last enabled. Has the value `null` until the style sheet is changed by setting the value of `document.selectedStyleSheetSet`.
+	**/
 	var lastStyleSheetSet(default,null) : String;
+	
+	/**
+		Returns the preferred style sheet set as specified by the page author.
+	**/
 	var preferredStyleSheetSet(default,null) : String;
+	
+	/**
+		Returns a list of the style sheet sets available on the document.
+	**/
 	var styleSheetSets(default,null) : DOMStringList;
+	
+	/**
+		…
+	**/
 	var timeline(default,null) : DocumentTimeline;
 	var fonts(default,null) : FontFaceSet;
 	var onabort : haxe.Constraints.Function;
@@ -128,9 +273,25 @@ extern class Document extends Node
 	var onpointerleave : haxe.Constraints.Function;
 	var ongotpointercapture : haxe.Constraints.Function;
 	var onlostpointercapture : haxe.Constraints.Function;
+	
+	/**
+		Is an `EventHandler` representing the code to be called when the `fullscreenchange` event is raised.
+	**/
 	var onfullscreenchange : haxe.Constraints.Function;
+	
+	/**
+		Is an `EventHandler` representing the code to be called when the `fullscreenerror` event is raised.
+	**/
 	var onfullscreenerror : haxe.Constraints.Function;
+	
+	/**
+		Represents the event handling code for the `pointerlockchange` event.
+	**/
 	var onpointerlockchange : haxe.Constraints.Function;
+	
+	/**
+		Represetnts the event handling code for the `pointerlockerror` event.
+	**/
 	var onpointerlockerror : haxe.Constraints.Function;
 	var onerror : haxe.Constraints.Function;
 	var children(default,null) : HTMLCollection;
@@ -144,59 +305,171 @@ extern class Document extends Node
 	
 	/** @throws DOMError */
 	function new() : Void;
+	
+	/**
+		Returns a list of elements with the given tag name.
+	**/
 	function getElementsByTagName( localName : String ) : HTMLCollection;
 	/** @throws DOMError */
+	
+	/**
+		Returns a list of elements with the given tag name and namespace.
+	**/
 	function getElementsByTagNameNS( namespace_ : String, localName : String ) : HTMLCollection;
+	
+	/**
+		Returns a list of elements with the given class name.
+	**/
 	function getElementsByClassName( classNames : String ) : HTMLCollection;
 	function getElementById( elementId : String ) : Element;
 	/** @throws DOMError */
 	@:overload( function( localName : String ) : Element {} )
+	
+	/**
+		Creates a new element with the given tag name.
+	**/
 	function createElement( localName : String, typeExtension : String ) : Element;
 	/** @throws DOMError */
 	@:overload( function( namespace_ : String, qualifiedName : String ) : Element {} )
+	
+	/**
+		Creates a new element with the given tag name and namespace URI.
+	**/
 	function createElementNS( namespace_ : String, qualifiedName : String, typeExtension : String ) : Element;
+	
+	/**
+		Creates a new document fragment.
+	**/
 	function createDocumentFragment() : DocumentFragment;
+	
+	/**
+		Creates a text node.
+	**/
 	function createTextNode( data : String ) : Text;
+	
+	/**
+		Creates a new comment node and returns it.
+	**/
 	function createComment( data : String ) : Comment;
 	/** @throws DOMError */
+	
+	/**
+		Creates a new `ProcessingInstruction` object.
+	**/
 	function createProcessingInstruction( target : String, data : String ) : ProcessingInstruction;
 	/** @throws DOMError */
+	
+	/**
+		Returns a clone of a node from an external document.
+	**/
 	function importNode( node : Node, ?deep : Bool = false ) : Node;
 	/** @throws DOMError */
+	
+	/**
+		Adopt node from an external document.
+	**/
 	function adoptNode( node : Node ) : Node;
 	/** @throws DOMError */
+	
+	/**
+		Creates an event object.
+	**/
 	function createEvent( interface_ : String ) : Event;
 	/** @throws DOMError */
+	
+	/**
+		Creates a `Range` object.
+	**/
 	function createRange() : Range;
 	/** @throws DOMError */
+	
+	/**
+		Creates a `NodeIterator` object.
+	**/
 	function createNodeIterator( root : Node, ?whatToShow : Int = cast 4294967295, ?filter : NodeFilter ) : NodeIterator;
 	/** @throws DOMError */
+	
+	/**
+		Creates a `TreeWalker` object.
+	**/
 	function createTreeWalker( root : Node, ?whatToShow : Int = cast 4294967295, ?filter : NodeFilter ) : TreeWalker;
 	/** @throws DOMError */
+	
+	/**
+		Creates a new CDATA node and returns it.
+	**/
 	function createCDATASection( data : String ) : CDATASection;
 	/** @throws DOMError */
+	
+	/**
+		Creates a new `Attr` object and returns it.
+	**/
 	function createAttribute( name : String ) : Attr;
 	/** @throws DOMError */
+	
+	/**
+		Creates a new attribute node in a given namespace and returns it.
+	**/
 	function createAttributeNS( namespace_ : String, name : String ) : Attr;
 	/** @throws DOMError */
 	function hasFocus() : Bool;
+	
+	/**
+		Releases the current mouse capture if it's on an element in this document.
+	**/
 	function releaseCapture() : Void;
 	function exitFullscreen() : Void;
+	
+	/**
+		Release the pointer lock.
+	**/
 	function exitPointerLock() : Void;
 	/** @throws DOMError */
+	
+	/**
+		Registers a web component.
+	**/
 	function registerElement( name : String, ?options : ElementRegistrationOptions ) : Dynamic;
+	
+	/**
+		Enables the style sheets for the specified style sheet set.
+	**/
 	function enableStyleSheetsForSet( name : String ) : Void;
+	
+	/**
+		Returns the topmost element at the specified coordinates. 
+	**/
 	function elementFromPoint( x : Float, y : Float ) : Element;
+	
+	/**
+		Returns an array of all elements at the specified coordinates.
+	**/
 	function elementsFromPoint( x : Float, y : Float ) : Array<Element>;
+	
+	/**
+		Gets the `CaretPosition` at or near the specified coordinates.
+	**/
 	function caretPositionFromPoint( x : Float, y : Float ) : CaretPosition;
 	/** @throws DOMError */
 	function querySelector( selectors : String ) : Element;
 	/** @throws DOMError */
 	function querySelectorAll( selectors : String ) : NodeList;
+	
+	/**
+		Returns an array of all `Animation` objects currently in effect whose target elements are descendants of the `document`.
+	**/
 	function getAnimations() : Array<Animation>;
+	
+	/**
+		Creates a `Touch` object.
+	**/
 	function createTouch( ?view : Window, ?target : EventTarget, ?identifier : Int = 0, ?pageX : Int = 0, ?pageY : Int = 0, ?screenX : Int = 0, ?screenY : Int = 0, ?clientX : Int = 0, ?clientY : Int = 0, ?radiusX : Int = 0, ?radiusY : Int = 0, ?rotationAngle : Float = 0.0, ?force : Float = 0.0 ) : Touch;
 	@:overload( function( touch : Touch, touches : haxe.extern.Rest<Touch> ) : TouchList {} )
 	@:overload( function() : TouchList {} )
+	
+	/**
+		Creates a `TouchList` object.
+	**/
 	function createTouchList( touches : Array<Touch> ) : TouchList;
 	/** @throws DOMError */
 	function convertQuadFromNode( quad : DOMQuad, from : haxe.extern.EitherType<Text,haxe.extern.EitherType<Element,HTMLDocument>>, ?options : ConvertCoordinateOptions ) : DOMQuad;

+ 19 - 0
std/js/html/DocumentFragment.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `DocumentFragment` interface represents a minimal document object that has no parent. It is used as a light-weight version of `Document` to store well-formed or potentially non-well-formed fragments of XML.
+
+	Documentation [DocumentFragment](https://developer.mozilla.org/en-US/docs/Web/API/DocumentFragment) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DocumentFragment$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DocumentFragment>
+**/
 @:native("DocumentFragment")
 extern class DocumentFragment extends Node
 {
@@ -34,9 +41,21 @@ extern class DocumentFragment extends Node
 	
 	/** @throws DOMError */
 	function new() : Void;
+	
+	/**
+		Returns the first `Element` node within the DocumentFragment`, in document order, that matches the specified ID.
+	**/
 	function getElementById( elementId : String ) : Element;
 	/** @throws DOMError */
+	
+	/**
+		Returns the first `Element` node within the `DocumentFragment`, in document order, that matches the specified selectors.
+	**/
 	function querySelector( selectors : String ) : Element;
 	/** @throws DOMError */
+	
+	/**
+		Returns a `NodeList` of all the `Element` nodes within the `DocumentFragment` that match the specified selectors.
+	**/
 	function querySelectorAll( selectors : String ) : NodeList;
 }

+ 7 - 0
std/js/html/DocumentTimeline.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `DocumentTimeline` interface of the the Web Animations API represents animation timelines, including the default document timeline (accessed via `Document.timeline`).
+
+	Documentation [DocumentTimeline](https://developer.mozilla.org/en-US/docs/Web/API/DocumentTimeline) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DocumentTimeline$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DocumentTimeline>
+**/
 @:native("DocumentTimeline")
 extern class DocumentTimeline extends AnimationTimeline
 {

+ 19 - 0
std/js/html/DocumentType.hx

@@ -24,11 +24,30 @@
 
 package js.html;
 
+/**
+	The `DocumentType` interface represents a `Node` containing a doctype.
+
+	Documentation [DocumentType](https://developer.mozilla.org/en-US/docs/Web/API/DocumentType) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DocumentType$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DocumentType>
+**/
 @:native("DocumentType")
 extern class DocumentType extends Node
 {
+	
+	/**
+		...
+	**/
 	var name(default,null) : String;
+	
+	/**
+		...
+	**/
 	var publicId(default,null) : String;
+	
+	/**
+		...
+	**/
 	var systemId(default,null) : String;
 	
 	function remove() : Void;

+ 7 - 0
std/js/html/DragEvent.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `DragEvent` interface is a `DOM event` that represents a drag and drop interaction. The user initiates a drag by placing a pointer device (such as a mouse) on the touch surface and then dragging the pointer to a new location (such as another DOM element). Applications are free to interpret a drag and drop interaction in an application-specific way.
+
+	Documentation [DragEvent](https://developer.mozilla.org/en-US/docs/Web/API/DragEvent) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/DragEvent$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/DragEvent>
+**/
 @:native("DragEvent")
 extern class DragEvent extends MouseEvent
 {

+ 7 - 0
std/js/html/Element.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `HTMLElement` interface represents any HTML element. Some elements directly implement this interface, others implement it via an interface that inherits it.
+
+	Documentation [HTMLElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement>
+**/
 @:native("HTMLElement")
 extern class Element extends DOMElement
 {

+ 31 - 0
std/js/html/EmbedElement.hx

@@ -24,14 +24,45 @@
 
 package js.html;
 
+/**
+	The `HTMLEmbedElement` interface, which provides special properties (beyond the regular `HTMLElement` interface it also has available to it by inheritance) for manipulating `embed` elements.
+
+	Documentation [HTMLEmbedElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLEmbedElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLEmbedElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLEmbedElement>
+**/
 @:native("HTMLEmbedElement")
 extern class EmbedElement extends Element
 {
+	
+	/**
+		Is a `DOMString` that reflects the `src` HTML attribute, containing the address of the resource.
+	**/
 	var src : String;
+	
+	/**
+		Is a `DOMString` that reflects the `type` HTML attribute, containing the type of the resource.
+	**/
 	var type : String;
+	
+	/**
+		Is a `DOMString` that reflects the `width` HTML attribute, containing the displayed width of the resource.
+	**/
 	var width : String;
+	
+	/**
+		Is a `DOMString` representing an enumerated property indicating alignment of the element's contents with respect to the surrounding context. The possible values are `"left"`, `"right"`, `"center"`, and `"justify"`.
+	**/
 	var height : String;
+	
+	/**
+		Is a `DOMString` reflecting the `height` HTML attribute, containing the displayed height of the resource.
+	**/
 	var align : String;
+	
+	/**
+		Is a `DOMString` representing the name of the embedded object.
+	**/
 	var name : String;
 	
 	function getSVGDocument() : HTMLDocument;

+ 27 - 0
std/js/html/ErrorEvent.hx

@@ -24,13 +24,40 @@
 
 package js.html;
 
+/**
+	The `ErrorEvent` interface represents events providing information related to errors in scripts or in files.
+
+	Documentation [ErrorEvent](https://developer.mozilla.org/en-US/docs/Web/API/ErrorEvent) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/ErrorEvent$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/ErrorEvent>
+**/
 @:native("ErrorEvent")
 extern class ErrorEvent extends Event
 {
+	
+	/**
+		Is a `DOMString` containing a human-readable error message describing the problem.
+	**/
 	var message(default,null) : String;
+	
+	/**
+		Is a `DOMString` containing the name of the script file in which the error occurred.
+	**/
 	var filename(default,null) : String;
+	
+	/**
+		Is an `integer` containing the line number of the script file on which the error occurred.
+	**/
 	var lineno(default,null) : Int;
+	
+	/**
+		Is an `integer` containing the column number of the script file on which the error occurred.
+	**/
 	var colno(default,null) : Int;
+	
+	/**
+		Is a JavaScript `Object` that is concerned by the event.
+	**/
 	var error(default,null) : Dynamic;
 	
 	/** @throws DOMError */

+ 71 - 0
std/js/html/Event.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `Event` interface represents any event which takes place in the DOM; some are user-generated (such as mouse or keyboard events), while others are generated by APIs (such as events that indicate an animation has finished running, a video has been paused, and so forth). There are many types of event, some of which use are other interfaces based on the main `Event` interface. `Event` itself contains the properties and methods which are common to all events.
+
+	Documentation [Event](https://developer.mozilla.org/en-US/docs/Web/API/Event) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/Event$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/Event>
+**/
 @:native("Event")
 extern class Event
 {
@@ -36,23 +43,87 @@ extern class Event
 	static inline var SHIFT_MASK : Int = 4;
 	static inline var META_MASK : Int = 8;
 	
+	
+	/**
+		The name of the event (case-insensitive).
+	**/
 	var type(default,null) : String;
+	
+	/**
+		A reference to the target to which the event was originally dispatched.
+	**/
 	var target(default,null) : EventTarget;
+	
+	/**
+		A reference to the currently registered target for the event. This is the object to which the event is currently slated to be sent to; it's possible this has been changed along the way through retargeting.
+	**/
 	var currentTarget(default,null) : EventTarget;
+	
+	/**
+		Indicates which phase of the event flow is being processed.
+	**/
 	var eventPhase(default,null) : Int;
+	
+	/**
+		A Boolean indicating whether the event bubbles up through the DOM or not.
+	**/
 	var bubbles(default,null) : Bool;
+	
+	/**
+		A Boolean indicating whether the event is cancelable.
+	**/
 	var cancelable(default,null) : Bool;
+	
+	/**
+		Indicates whether or not `event.preventDefault()` has been called on the event.
+	**/
 	var defaultPrevented(default,null) : Bool;
+	
+	/**
+		Indicates whether or not the event was initiated by the browser (after a user click for instance) or by a script (using an event creation method, like event.initEvent)
+	**/
 	var isTrusted(default,null) : Bool;
+	
+	/**
+		The time at which the event was created, in milliseconds. By specification, this value is time since epoch, but in reality browsers' definitions vary; in addition, work is underway to change this to be a `DOMHighResTimeStamp` instead.
+	**/
 	var timeStamp(default,null) : Float;
+	
+	/**
+		The original target of the event, before any retargetings (Mozilla-specific).
+	**/
 	var originalTarget(default,null) : EventTarget;
+	
+	/**
+		The explicit original target of the event (Mozilla-specific).
+	**/
 	var explicitOriginalTarget(default,null) : EventTarget;
 	
 	/** @throws DOMError */
 	function new( type : String, ?eventInitDict : EventInit ) : Void;
+	
+	/**
+		Stops the propagation of events further along in the DOM.
+	**/
 	function stopPropagation() : Void;
+	
+	/**
+		For this particular event, no other listener will be called. Neither those attached on the same element, nor those attached on elements which will be traversed later (in capture phase, for instance)
+	**/
 	function stopImmediatePropagation() : Void;
+	
+	/**
+		Cancels the event (if it is cancelable).
+	**/
 	function preventDefault() : Void;
+	
+	/**
+		Initializes the value of an Event created. If the event has already being dispatched, this method does nothing.
+	**/
 	function initEvent( type : String, bubbles : Bool, cancelable : Bool ) : Void;
+	
+	/**
+		Non-standard. Returns the value of `Event.defaultPrevented`. Use `Event.defaultPrevented` instead.
+	**/
 	function getPreventDefault() : Bool;
 }

+ 7 - 0
std/js/html/EventListener.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	This method is called whenever an event occurs of the type for which the `EventListener` interface was registered.
+
+	Documentation [EventListener](https://developer.mozilla.org/en-US/docs/Web/API/EventListener) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/EventListener$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/EventListener>
+**/
 @:native("EventListener")
 extern class EventListener
 {

+ 31 - 0
std/js/html/EventSource.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `EventSource` interface is used to receive server-sent events. It connects to a server over HTTP and receives events in `text/event-stream` format without closing the connection.
+
+	Documentation [EventSource](https://developer.mozilla.org/en-US/docs/Web/API/EventSource) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/EventSource$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/EventSource>
+**/
 @:native("EventSource")
 extern class EventSource extends EventTarget
 {
@@ -31,14 +38,38 @@ extern class EventSource extends EventTarget
 	static inline var OPEN : Int = 1;
 	static inline var CLOSED : Int = 2;
 	
+	
+	/**
+		A `DOMString` representing the URL of the source.
+	**/
 	var url(default,null) : String;
 	var withCredentials(default,null) : Bool;
+	
+	/**
+		An `unsigned short` representing the state of the connection. Possible values are `CONNECTING` (`0`), `OPEN` (`1`), or `CLOSED` (`2`).
+	**/
 	var readyState(default,null) : Int;
+	
+	/**
+		Is an `EventHandler` being called when an `open` event is received, that is when the connection was just opened.
+	**/
 	var onopen : haxe.Constraints.Function;
+	
+	/**
+		Is an `EventHandler` being called when a `message` event is received, that is when a message is coming from the source.
+	**/
 	var onmessage : haxe.Constraints.Function;
+	
+	/**
+		Is an `EventHandler` being called when an error occurs and the `error` event is dispatched on this object.
+	**/
 	var onerror : haxe.Constraints.Function;
 	
 	/** @throws DOMError */
 	function new( url : String, ?eventSourceInitDict : EventSourceInit ) : Void;
+	
+	/**
+		Closes the connection, if any, and sets the `readyState` attribute to `CLOSED`. If the connection is already closed, the method does nothing.
+	**/
 	function close() : Void;
 }

+ 19 - 0
std/js/html/EventTarget.hx

@@ -24,15 +24,34 @@
 
 package js.html;
 
+/**
+	`EventTarget` is an interface implemented by objects that can receive events and may have listeners for them.
+
+	Documentation [EventTarget](https://developer.mozilla.org/en-US/docs/Web/API/EventTarget) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/EventTarget$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/EventTarget>
+**/
 @:native("EventTarget")
 extern class EventTarget
 {
 	/** @throws DOMError */
 	@:overload( function( type : String, listener : EventListener, ?capture : Bool = false, ?wantsUntrusted : Bool ) : Void {} )
+	
+	/**
+		Register an event handler of a specific event type on the `EventTarget`.
+	**/
 	function addEventListener( type : String, listener : haxe.Constraints.Function, ?capture : Bool = false ) : Void;
 	/** @throws DOMError */
 	@:overload( function( type : String, listener : EventListener, ?capture : Bool = false ) : Void {} )
+	
+	/**
+		Removes an event listener from the `EventTarget`.
+	**/
 	function removeEventListener( type : String, listener : haxe.Constraints.Function, ?capture : Bool = false ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Dispatch an event to this `EventTarget`.
+	**/
 	function dispatchEvent( event : Event ) : Bool;
 }

+ 7 - 0
std/js/html/ExtendableEvent.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `ExtendableEvent` interface extends the lifetime of the `install` and `activate` events dispatched on the global scope as part of the service worker lifecycle. This ensures that any functional events (like `FetchEvent`) are not dispatched until it upgrades database schemas and deletes the outdated cache entries.
+
+	Documentation [ExtendableEvent](https://developer.mozilla.org/en-US/docs/Web/API/ExtendableEvent) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/ExtendableEvent$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/ExtendableEvent>
+**/
 @:native("ExtendableEvent")
 extern class ExtendableEvent extends Event
 {

+ 27 - 0
std/js/html/ExtendableMessageEvent.hx

@@ -24,13 +24,40 @@
 
 package js.html;
 
+/**
+	The `ExtendableMessageEvent` interface of the `ServiceWorker API` represents the event object of a `message` event fired on a service worker (when a channel message is received on the `ServiceWorkerGlobalScope` from another context) — extends the lifetime of such events.
+
+	Documentation [ExtendableMessageEvent](https://developer.mozilla.org/en-US/docs/Web/API/ExtendableMessageEvent) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/ExtendableMessageEvent$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/ExtendableMessageEvent>
+**/
 @:native("ExtendableMessageEvent")
 extern class ExtendableMessageEvent extends ExtendableEvent
 {
+	
+	/**
+		Returns the event's data. It can be any data type.
+	**/
 	var data(default,null) : Dynamic;
+	
+	/**
+		Returns the origin of the `ServiceWorkerClient` that sent the message
+	**/
 	var origin(default,null) : String;
+	
+	/**
+		Represents, in server-sent events, the last event ID of the event source.
+	**/
 	var lastEventId(default,null) : String;
+	
+	/**
+		Returns a reference to the service worker that sent the message.
+	**/
 	var source(default,null) : haxe.extern.EitherType<Client,haxe.extern.EitherType<ServiceWorker,MessagePort>>;
+	
+	/**
+		Returns the array containing the `MessagePort` objects representing the ports of the associated message channel.
+	**/
 	var ports(default,null) : MessagePortList;
 	
 	/** @throws DOMError */

+ 23 - 0
std/js/html/FetchEvent.hx

@@ -24,15 +24,38 @@
 
 package js.html;
 
+/**
+	The parameter passed into the `ServiceWorkerGlobalScope.onfetch` handler, `FetchEvent` represents a fetch action that is dispatched on the `ServiceWorkerGlobalScope` of a `ServiceWorker`. It contains information about the request and resulting response, and provides the `FetchEvent.respondWith()` method, which allows us to provide an arbitrary response back to the controlled page.
+
+	Documentation [FetchEvent](https://developer.mozilla.org/en-US/docs/Web/API/FetchEvent) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/FetchEvent$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/FetchEvent>
+**/
 @:native("FetchEvent")
 extern class FetchEvent extends ExtendableEvent
 {
+	
+	/**
+		Returns the `Request` that triggered the event handler.
+	**/
 	var request(default,null) : Request;
+	
+	/**
+		Returns the id of the client that the current service worker is controlling.
+	**/
 	var clientId(default,null) : String;
+	
+	/**
+		Returns a `Boolean` that is `true` if the event was dispatched with the user's intention for the page to reload, and `false` otherwise. Typically, pressing the refresh button in a browser is a reload, while clicking a link and pressing the back button is not.
+	**/
 	var isReload(default,null) : Bool;
 	
 	/** @throws DOMError */
 	function new( type : String, eventInitDict : FetchEventInit ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Resolves by returning a `Response` or a network error  to Fetch`.
+	**/
 	function respondWith( r : Promise<Response> ) : Void;
 }

+ 7 - 0
std/js/html/FieldSetElement.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `HTMLFieldSetElement` interface has special properties and methods (beyond the regular `HTMLElement` interface it also has available to it by inheritance) for manipulating the layout and presentation of field-set elements.
+
+	Documentation [HTMLFieldSetElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLFieldSetElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLFieldSetElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLFieldSetElement>
+**/
 @:native("HTMLFieldSetElement")
 extern class FieldSetElement extends Element
 {

+ 19 - 0
std/js/html/File.hx

@@ -24,11 +24,30 @@
 
 package js.html;
 
+/**
+	The `File` interface provides information about files and allows JavaScript in a web page to access their content.
+
+	Documentation [File](https://developer.mozilla.org/en-US/docs/Web/API/File) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/File$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/File>
+**/
 @:native("File")
 extern class File extends Blob
 {
+	
+	/**
+		Returns the name of the file referenced by the `File` object.
+	**/
 	var name(default,null) : String;
+	
+	/**
+		Returns the last modified time of the file, in millisecond since the UNIX epoch (January 1st, 1970 at Midnight).
+	**/
 	var lastModified(default,null) : Int;
+	
+	/**
+		Returns the last modified `Date` of the file referenced by the `File` object.
+	**/
 	var lastModifiedDate(default,null) : Date;
 	
 	/** @throws DOMError */

+ 7 - 0
std/js/html/FileList.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	An object of this type is returned by the `files` property of the HTML `input` element; this lets you access the list of files selected with the `input type="file"` element. It's also used for a list of files dropped into web content when using the drag and drop API; see the `DataTransfer` object for details on this usage.
+
+	Documentation [FileList](https://developer.mozilla.org/en-US/docs/Web/API/FileList) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/FileList$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/FileList>
+**/
 @:native("FileList")
 extern class FileList implements ArrayAccess<File>
 {

+ 83 - 0
std/js/html/FileReader.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `FileReader` object lets web applications asynchronously read the contents of files (or raw data buffers) stored on the user's computer, using `File` or `Blob` objects to specify the file or data to read.
+
+	Documentation [FileReader](https://developer.mozilla.org/en-US/docs/Web/API/FileReader) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/FileReader$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/FileReader>
+**/
 @:native("FileReader")
 extern class FileReader extends EventTarget
 {
@@ -31,26 +38,102 @@ extern class FileReader extends EventTarget
 	static inline var LOADING : Int = 1;
 	static inline var DONE : Int = 2;
 	
+	
+	/**
+		A number indicating the state of the <code>FileReader</code>. This is one of the following:
+		 <table class="standard-table">
+		  
+		   <tr>
+		    <td><code>EMPTY</code></td>
+		    <td><code>0</code></td>
+		    <td>No data has been loaded yet.</td>
+		   </tr>
+		   <tr>
+		    <td><code>LOADING</code></td>
+		    <td><code>1</code></td>
+		    <td>Data is currently being loaded.</td>
+		   </tr>
+		   <tr>
+		    <td><code>DONE</code></td>
+		    <td><code>2</code></td>
+		    <td>The entire read request has been completed.</td>
+		   </tr>
+		  
+		 </table>
+		 
+	**/
 	var readyState(default,null) : Int;
+	
+	/**
+		The file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation.
+	**/
 	var result(default,null) : Dynamic;
+	
+	/**
+		A `DOMError` representing the error that occurred while reading the file.
+	**/
 	var error(default,null) : DOMError;
+	
+	/**
+		A handler for the `loadstart` event. This event is triggered each time the reading is starting.
+	**/
 	var onloadstart : haxe.Constraints.Function;
+	
+	/**
+		A handler for the `progress` event. This event is triggered while reading a `Blob` content.
+	**/
 	var onprogress : haxe.Constraints.Function;
+	
+	/**
+		A handler for the `load` event. This event is triggered each time the reading operation is successfully completed.
+	**/
 	var onload : haxe.Constraints.Function;
+	
+	/**
+		A handler for the `abort` event. This event is triggered each time the reading operation is aborted.
+	**/
 	var onabort : haxe.Constraints.Function;
+	
+	/**
+		A handler for the `error` event. This event is triggered each time the reading operation encounter an error.
+	**/
 	var onerror : haxe.Constraints.Function;
+	
+	/**
+		A handler for the `loadend` event. This event is triggered each time the reading operation is completed (either in success or failure).
+	**/
 	var onloadend : haxe.Constraints.Function;
 	
 	/** @throws DOMError */
 	function new() : Void;
 	/** @throws DOMError */
+	
+	/**
+		Starts reading the contents of the specified `Blob`, once finished, the `result` attribute contains an `ArrayBuffer` representing the file's data.
+	**/
 	function readAsArrayBuffer( blob : Blob ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Starts reading the contents of the specified `Blob`, once finished, the `result` attribute contains the contents of the file as a text string.
+	**/
 	function readAsText( blob : Blob, ?label : String = "" ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Starts reading the contents of the specified `Blob`, once finished, the `result` attribute contains a `data:` URL representing the file's data.
+	**/
 	function readAsDataURL( blob : Blob ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Aborts the read operation. Upon return, the `readyState` will be `DONE`.
+	**/
 	function abort() : Void;
 	/** @throws DOMError */
+	
+	/**
+		Starts reading the contents of the specified `Blob`, once finished, the `result` attribute contains the raw binary data from the file as a string.
+	**/
 	function readAsBinaryString( filedata : Blob ) : Void;
 }

+ 7 - 0
std/js/html/FileReaderSync.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `FileReaderSync` interface allows to read `File` or `Blob` objects in a synchronous way.
+
+	Documentation [FileReaderSync](https://developer.mozilla.org/en-US/docs/Web/API/FileReaderSync) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/FileReaderSync$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/FileReaderSync>
+**/
 @:native("FileReaderSync")
 extern class FileReaderSync
 {

+ 11 - 0
std/js/html/FocusEvent.hx

@@ -24,9 +24,20 @@
 
 package js.html;
 
+/**
+	The `FocusEvent` interface represents focus-related events like `focus`, `blur`, `focusin`, or `focusout`.
+
+	Documentation [FocusEvent](https://developer.mozilla.org/en-US/docs/Web/API/FocusEvent) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/FocusEvent$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/FocusEvent>
+**/
 @:native("FocusEvent")
 extern class FocusEvent extends UIEvent
 {
+	
+	/**
+		Is an `EventTarget` representing a secondary target for this event. As in some cases (like when tabbing in or out a page), this property may be set to `null` for security reasons.
+	**/
 	var relatedTarget(default,null) : EventTarget;
 	
 	/** @throws DOMError */

+ 47 - 0
std/js/html/FontFace.hx

@@ -24,21 +24,68 @@
 
 package js.html;
 
+/**
+	The `FontFace` interface represents a single usable font face. It allows control of the source of the font face, being a URL to an external resource, or a buffer; it also allows control of when the font face is loaded and its current status.
+
+	Documentation [FontFace](https://developer.mozilla.org/en-US/docs/Web/API/FontFace) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/FontFace$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/FontFace>
+**/
 @:native("FontFace")
 extern class FontFace
 {
+	
+	/**
+		Is a `DOMString` that contains the family of the font. It is equivalent to the `@font-face/family` descriptor.
+	**/
 	var family : String;
+	
+	/**
+		Is a `DOMString` that contains the style of the font. It is equivalent to the `@font-face/style` descriptor.
+	**/
 	var style : String;
+	
+	/**
+		Is a `DOMString` that contains the weight of the font. It is equivalent to the `@font-face/weight` descriptor.
+	**/
 	var weight : String;
+	
+	/**
+		Is a `DOMString` that contains how the font stretches. It is equivalent to the `@font-face/stretch` descriptor.
+	**/
 	var stretch : String;
+	
+	/**
+		Is a `DOMString` that contains the range of code encompassed the font. It is equivalent to the `@font-face/unicode-range` descriptor.
+	**/
 	var unicodeRange : String;
+	
+	/**
+		Is a `DOMString` that contains the variant of the font. It is equivalent to the `@font-face/range` descriptor.
+	**/
 	var variant : String;
+	
+	/**
+		Is a `DOMString` that contains the features of the font. It is equivalent to the `@font-face/feature-settings` descriptor.
+	**/
 	var featureSettings : String;
+	
+	/**
+		Returns an enumerated value indicating the status of the font. It can be one of the following: `"unloaded"`, `"loading"`, `"loaded"`, or `"error"`.
+	**/
 	var status(default,null) : FontFaceLoadStatus;
+	
+	/**
+		Returns a `Promise` to a `FontFace` that fulfills when the font is completely loaded and rejects when an error happens.
+	**/
 	var loaded(default,null) : Promise<FontFace>;
 	
 	/** @throws DOMError */
 	function new( family : String, source : haxe.extern.EitherType<String,haxe.extern.EitherType<ArrayBuffer,ArrayBufferView>>, ?descriptors : FontFaceDescriptors ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Loads the font, returning a `Promise` to a `FontFace` that fulfills when the font is completely loaded and rejects when an error happens.
+	**/
 	function load() : Promise<FontFace>;
 }

+ 23 - 0
std/js/html/FontFaceSet.hx

@@ -24,14 +24,37 @@
 
 package js.html;
 
+/**
+	The `FontFaceSet` interface of the CSS Font Loading API is an interface for loading font faces and checking their download statuses.
+
+	Documentation [FontFaceSet](https://developer.mozilla.org/en-US/docs/Web/API/FontFaceSet) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/FontFaceSet$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/FontFaceSet>
+**/
 @:native("FontFaceSet")
 extern class FontFaceSet extends EventTarget
 {
 	var size(default,null) : Int;
+	
+	/**
+		An `EventListener` property called whenever an event of type `loading` is fired, indicating that a font face set has started to load.
+	**/
 	var onloading : haxe.Constraints.Function;
+	
+	/**
+		An `EventListener` property called whenever an event of type `loadingdone` is fired, indicating that a font face set has finished loading.
+	**/
 	var onloadingdone : haxe.Constraints.Function;
+	
+	/**
+		An `EventListener` property called whenever an event of type `loadingerror` is fired, indicating that an error occurred during the loading of a font face set.
+	**/
 	var onloadingerror : haxe.Constraints.Function;
 	var ready(default,null) : Promise<Void>;
+	
+	/**
+		Indicates the font face's loading status. It will be one of `'loading'` or `'loaded'`.
+	**/
 	var status(default,null) : FontFaceSetLoadStatus;
 	
 	/** @throws DOMError */

+ 39 - 0
std/js/html/FormData.hx

@@ -24,6 +24,13 @@
 
 package js.html;
 
+/**
+	The `FormData` interface provides a way to easily construct a set of key/value pairs representing form fields and their values, which can then be easily sent using the `XMLHttpRequest.send()` method. It uses the same format a form would use if the encoding type were set to `"multipart/form-data"`.
+
+	Documentation [FormData](https://developer.mozilla.org/en-US/docs/Web/API/FormData) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/FormData$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/FormData>
+**/
 @:native("FormData")
 extern class FormData
 {
@@ -31,20 +38,52 @@ extern class FormData
 	function new( ?form : FormElement ) : Void;
 	/** @throws DOMError */
 	@:overload( function( name : String, value : Blob, ?filename : String ) : Void {} )
+	
+	/**
+		Appends a new value onto an existing key inside a `FormData` object, or adds the key if it does not already exist.
+	**/
 	function append( name : String, value : String ) : Void;
 	@:native("delete")
 	function delete_( name : String ) : Void;
+	
+	/**
+		Returns the first value associated with a given key from within a `FormData` object.
+	**/
 	function get( name : String ) : haxe.extern.EitherType<Blob,String>;
+	
+	/**
+		Returns an array of all the values associated with a given key from within a `FormData`.
+	**/
 	function getAll( name : String ) : Array<haxe.extern.EitherType<Blob,String>>;
+	
+	/**
+		Returns a boolean stating whether a `FormData` object contains a certain key/value pair.
+	**/
 	function has( name : String ) : Bool;
 	/** @throws DOMError */
 	@:overload( function( name : String, value : Blob, ?filename : String ) : Void {} )
+	
+	/**
+		Sets a new value for an existing key inside a `FormData `object, or adds the key/value if it does not already exist.
+	**/
 	function set( name : String, value : String ) : Void;
 	/** @throws DOMError */
+	
+	/**
+		Returns an `Iteration_protocols` allowing to go through all key/value pairs contained in this object.
+	**/
 	function entries() : FormDataIterator;
 	/** @throws DOMError */
+	
+	/**
+		Returns an `Iteration_protocols` allowing to go through all keys of the key/value pairs contained in this object.
+	**/
 	function keys() : FormDataIterator;
 	/** @throws DOMError */
+	
+	/**
+		Returns an `Iteration_protocols` allowing to go through all values of the key/value pairs contained in this object.
+	**/
 	function values() : FormDataIterator;
 	/** @throws DOMError */
 	function forEach( callback : Dynamic, ?thisArg : Dynamic ) : Void;

+ 11 - 0
std/js/html/FormElement.hx

@@ -24,6 +24,17 @@
 
 package js.html;
 
+/**
+	The `HTMLFormElement` interface provides methods to create and modify `form` elements.
+		document.forms - returns an array of HTMLFormElement objects referencing all forms on the page.
+		document.forms[index] - returns an HTMLFormElement object referencing the form at the specified index.
+		document.forms['id'] - returns an HTMLFormElement object referencing the form with the specified id.
+		document.forms['name'] - returns an HTMLFormElement object referencing the form with the specified name.
+
+	Documentation [HTMLFormElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement>
+**/
 @:native("HTMLFormElement")
 extern class FormElement extends Element implements ArrayAccess<Element>
 {

+ 15 - 0
std/js/html/FrameSetElement.hx

@@ -24,10 +24,25 @@
 
 package js.html;
 
+/**
+	The `HTMLFrameSetElement` interface provides special properties (beyond those of the regular `HTMLElement` interface they also inherit) for manipulating `frameset` elements.
+
+	Documentation [HTMLFrameSetElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLFrameSetElement) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/HTMLFrameSetElement$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/HTMLFrameSetElement>
+**/
 @:native("HTMLFrameSetElement")
 extern class FrameSetElement extends Element
 {
+	
+	/**
+		Is a `DOMString` that represents the foreground color of text.
+	**/
 	var cols : String;
+	
+	/**
+		Is a `DOMString` that represents the color of visited links.
+	**/
 	var rows : String;
 	var onafterprint : haxe.Constraints.Function;
 	var onbeforeprint : haxe.Constraints.Function;

+ 35 - 0
std/js/html/Gamepad.hx

@@ -24,15 +24,50 @@
 
 package js.html;
 
+/**
+	The `Gamepad` interface of the Gamepad API defines an individual gamepad or other controller, allowing access to information such as button presses, axis positions, and id.
+
+	Documentation [Gamepad](https://developer.mozilla.org/en-US/docs/Web/API/Gamepad) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/Gamepad$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/Gamepad>
+**/
 @:native("Gamepad")
 extern class Gamepad
 {
+	
+	/**
+		A `DOMString` containing identifying information about the controller.
+	**/
 	var id(default,null) : String;
+	
+	/**
+		An integer that is auto-incremented to be unique for each device currently connected to the system.
+	**/
 	var index(default,null) : Int;
+	
+	/**
+		A string indicating whether the browser has remapped the controls on the device to a known layout.
+	**/
 	var mapping(default,null) : GamepadMappingType;
+	
+	/**
+		A boolean indicating whether the gamepad is still connected to the system.
+	**/
 	var connected(default,null) : Bool;
+	
+	/**
+		An array of `gamepadButton` objects representing the buttons present on the device.
+	**/
 	var buttons(default,null) : Array<GamepadButton>;
+	
+	/**
+		An array representing the controls with axes present on the device (e.g. analog thumb sticks).
+	**/
 	var axes(default,null) : Array<Float>;
+	
+	/**
+		A `DOMHighResTimeStamp` representing the last time the data for this gamepad was updated. Note that this property is not currently supported anywhere.
+	**/
 	var timestamp(default,null) : Float;
 	
 }

이 변경점에서 너무 많은 파일들이 변경되어 몇몇 파일들은 표시되지 않았습니다.