module Dom_html: sig
.. end
DOM HTML binding
This is a partial binding to the DOM HTML API.
CSS style declaration
class type cssStyleDeclaration = object
.. end
Events
type ('a, 'b)
event_listener = ('a, 'b) Dom.event_listener
The type of event listener functions. The first type parameter
'a
is the type of the target object; the second parameter
'b
is the type of the event object.
type
mouse_button =
| |
No_button |
| |
Left_button |
| |
Middle_button |
| |
Right_button |
class type event = object
.. end
class type mouseEvent = object
.. end
class type keyboardEvent = object
.. end
class type mousewheelEvent = object
.. end
class type mouseScrollEvent = object
.. end
class type touchEvent = object
.. end
class type touchList = object
.. end
class type touch = object
.. end
class type dragEvent = object
.. end
class type dataTransfer = object
.. end
class type eventTarget = object
.. end
Common properties of event target objects: onclick
,
onkeypress
, ...
class type popStateEvent = object
.. end
class type storageEvent = object
.. end
class type storage = object
.. end
Storage
class type hashChangeEvent = object
.. end
HTML elements
class type nodeSelector = object
.. end
class type tokenList = object
.. end
class type element = object
.. end
Properties common to all HTML elements
class type clientRect = object
.. end
Rectangular box (used for element bounding boxes)
class type clientRectList = object
.. end
class type ['node]
collection = object
.. end
Collection of HTML elements
class type htmlElement = element
class type headElement = object
.. end
class type linkElement = object
.. end
class type titleElement = object
.. end
class type metaElement = object
.. end
class type baseElement = object
.. end
class type styleElement = object
.. end
class type bodyElement = element
class type formElement = object
.. end
class type optGroupElement = object
.. end
class type optionElement = object
.. end
class type selectElement = object
.. end
class type inputElement = object
.. end
class type textAreaElement = object
.. end
class type buttonElement = object
.. end
class type labelElement = object
.. end
class type fieldSetElement = object
.. end
class type legendElement = object
.. end
class type uListElement = element
class type oListElement = element
class type dListElement = element
class type liElement = element
class type divElement = element
class type paragraphElement = element
class type headingElement = element
class type quoteElement = object
.. end
class type preElement = element
class type brElement = element
class type hrElement = element
class type modElement = object
.. end
class type anchorElement = object
.. end
class type imageElement = object
.. end
class type objectElement = object
.. end
class type paramElement = object
.. end
class type areaElement = object
.. end
class type mapElement = object
.. end
class type scriptElement = object
.. end
class type tableCellElement = object
.. end
class type tableRowElement = object
.. end
class type tableColElement = object
.. end
class type tableSectionElement = object
.. end
class type tableCaptionElement = element
class type tableElement = object
.. end
type
videoElement
Canvas object
type
context
val _2d_ : context
type
canvasPattern
class type canvasElement = object
.. end
class type canvasRenderingContext2D = object
.. end
class type canvasGradient = object
.. end
class type textMetrics = object
.. end
class type imageData = object
.. end
class type canvasPixelArray = object
.. end
val pixel_get : canvasPixelArray Js.t -> int -> int
val pixel_set : canvasPixelArray Js.t -> int -> int -> unit
Document objects
class type document = object
.. end
val document : document Js.t
The current document
Window objects
class type location = object
.. end
Location information
class type history = object
.. end
Browser history information
class type undoManager = object
.. end
Undo manager
class type selection = object
.. end
Information on current selection
class type navigator = object
.. end
Navigator information
class type screen = object
.. end
class type applicationCache = object
.. end
type
interval_id
type
timeout_id
class type window = object
.. end
Specification of window objects
val window : window Js.t
The current window
val _requestAnimationFrame : (unit -> unit) Js.callback -> unit
Call the appropriate requestAnimationFrame
method variant
(depending on the navigator), or sleep for a short amount
of time when there no such method is provided. We currently
prefix the function name with as underscore as the interface of
this function is not completely standardized yet. Thus, we leave
the room to a function with a possibly refined type.
class type frameSetElement = object
.. end
class type frameElement = object
.. end
class type iFrameElement = object
.. end
Event handlers
val no_handler : ('a, 'b) event_listener
see Dom.no_handler
val handler : ((#event as 'b) Js.t -> bool Js.t) ->
('a, 'b Js.t) event_listener
see Dom.handler
val full_handler : ('a -> (#event as 'b) Js.t -> bool Js.t) ->
('a, 'b Js.t) event_listener
see Dom.full_handler
val invoke_handler : ('a, 'b) event_listener -> 'a -> 'b -> bool Js.t
see Dom.invoke_handler
val eventTarget : #event Js.t -> element Js.t
see Dom.eventTarget
val eventRelatedTarget : #mouseEvent Js.t -> element Js.t Js.opt
Returns this event related target.
module Event: sig
.. end
Event types: mousedown
, keypress
, ...
type
event_listener_id = Dom.event_listener_id
val addEventListener : (#eventTarget as 'a) Js.t ->
'b Event.typ ->
('a Js.t, 'b) event_listener ->
bool Js.t -> event_listener_id
Add an event listener. This function matches the
addEventListener
DOM method, except that it returns
an id for removing the listener.
val removeEventListener : event_listener_id -> unit
Remove the given event listener.
val addMousewheelEventListener : #eventTarget Js.t ->
(mouseEvent Js.t -> dx:int -> dy:int -> bool Js.t) ->
bool Js.t -> event_listener_id
Add a mousewheel event listener. The callback is provided the
event and the numbers of ticks the mouse wheel moved. Positive
means down / right.
Mouse event helper functions
val buttonPressed : #mouseEvent Js.t -> mouse_button
Position helper functions
val eventAbsolutePosition : #mouseEvent Js.t -> int * int
Returns the absolute position of the mouse pointer.
val elementClientPosition : #element Js.t -> int * int
Position of an element relative to the viewport
val getDocumentScroll : unit -> int * int
Viewport top/left position
Helper functions for creating HTML elements
val createHtml : document Js.t -> htmlElement Js.t
val createHead : document Js.t -> headElement Js.t
val createLink : document Js.t -> linkElement Js.t
val createTitle : document Js.t -> titleElement Js.t
val createMeta : document Js.t -> metaElement Js.t
val createBase : document Js.t -> baseElement Js.t
val createStyle : document Js.t -> styleElement Js.t
val createBody : document Js.t -> bodyElement Js.t
val createForm : document Js.t -> formElement Js.t
val createOptgroup : document Js.t -> optGroupElement Js.t
val createOption : document Js.t -> optionElement Js.t
val createSelect : ?_type:Js.js_string Js.t ->
?name:Js.js_string Js.t ->
document Js.t -> selectElement Js.t
val createInput : ?_type:Js.js_string Js.t ->
?name:Js.js_string Js.t ->
document Js.t -> inputElement Js.t
val createTextarea : ?_type:Js.js_string Js.t ->
?name:Js.js_string Js.t ->
document Js.t -> textAreaElement Js.t
val createButton : ?_type:Js.js_string Js.t ->
?name:Js.js_string Js.t ->
document Js.t -> buttonElement Js.t
val createLabel : document Js.t -> labelElement Js.t
val createFieldset : document Js.t -> fieldSetElement Js.t
val createLegend : document Js.t -> legendElement Js.t
val createUl : document Js.t -> uListElement Js.t
val createOl : document Js.t -> oListElement Js.t
val createDl : document Js.t -> dListElement Js.t
val createLi : document Js.t -> liElement Js.t
val createDiv : document Js.t -> divElement Js.t
val createP : document Js.t -> paragraphElement Js.t
val createH1 : document Js.t -> headingElement Js.t
val createH2 : document Js.t -> headingElement Js.t
val createH3 : document Js.t -> headingElement Js.t
val createH4 : document Js.t -> headingElement Js.t
val createH5 : document Js.t -> headingElement Js.t
val createH6 : document Js.t -> headingElement Js.t
val createQ : document Js.t -> quoteElement Js.t
val createBlockquote : document Js.t -> quoteElement Js.t
val createPre : document Js.t -> preElement Js.t
val createBr : document Js.t -> brElement Js.t
val createHr : document Js.t -> hrElement Js.t
val createIns : document Js.t -> modElement Js.t
val createDel : document Js.t -> modElement Js.t
val createA : document Js.t -> anchorElement Js.t
val createImg : document Js.t -> imageElement Js.t
val createObject : document Js.t -> objectElement Js.t
val createParam : document Js.t -> paramElement Js.t
val createMap : document Js.t -> mapElement Js.t
val createArea : document Js.t -> areaElement Js.t
val createScript : document Js.t -> scriptElement Js.t
val createTable : document Js.t -> tableElement Js.t
val createCaption : document Js.t -> tableCaptionElement Js.t
val createCol : document Js.t -> tableColElement Js.t
val createColgroup : document Js.t -> tableColElement Js.t
val createThead : document Js.t -> tableSectionElement Js.t
: document Js.t -> tableSectionElement Js.t
val createTbody : document Js.t -> tableSectionElement Js.t
val createTr : document Js.t -> tableRowElement Js.t
val createTh : document Js.t -> tableCellElement Js.t
val createTd : document Js.t -> tableCellElement Js.t
val createSub : document Js.t -> element Js.t
val createSup : document Js.t -> element Js.t
val createSpan : document Js.t -> element Js.t
val createTt : document Js.t -> element Js.t
val createI : document Js.t -> element Js.t
val createB : document Js.t -> element Js.t
val createBig : document Js.t -> element Js.t
val createSmall : document Js.t -> element Js.t
val createEm : document Js.t -> element Js.t
val createStrong : document Js.t -> element Js.t
val createCite : document Js.t -> element Js.t
val createDfn : document Js.t -> element Js.t
val createCode : document Js.t -> element Js.t
val createSamp : document Js.t -> element Js.t
val createKbd : document Js.t -> element Js.t
val createVar : document Js.t -> element Js.t
val createAbbr : document Js.t -> element Js.t
val createDd : document Js.t -> element Js.t
val createDt : document Js.t -> element Js.t
val createNoscript : document Js.t -> element Js.t
val createAddress : document Js.t -> element Js.t
val createFrameset : document Js.t -> frameSetElement Js.t
val createFrame : document Js.t -> frameElement Js.t
val createIframe : document Js.t -> iFrameElement Js.t
exception Canvas_not_available
val createCanvas : document Js.t -> canvasElement Js.t
Raises Canvas_not_available
when canvas elements are not
supported by the browser.
Coercion functions
val element : #Dom.element Js.t -> element Js.t
Coercion from a general DOM element to an HTML element.
(Unsafe in general.)
type
taggedElement =
val tagged : #element Js.t -> taggedElement
val opt_tagged : #element Js.t Js.opt -> taggedElement option
type
taggedEvent =
val taggedEvent : #event Js.t -> taggedEvent
val opt_taggedEvent : #event Js.t Js.opt -> taggedEvent option
val stopPropagation : #event Js.t -> unit
module CoerceTo: sig
.. end