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
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 wheelEvent = object
.. end
class type mouseScrollEvent = 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
HTML elements
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 ['a]
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
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
type
interval_id
type
timeout_id
class type window = object
.. end
Specification of window objects
val window : window Js.t
The current window
class type frameSetElement = object
.. end
class type frameElement = object
.. end
class type iFrameElement = object
.. end
Event handlers
val no_handler : ('a, 'b) event_listener
Void event handler (Javascript null
value).
val handler : ((#event as 'a) Js.t -> bool Js.t) ->
('b, 'a Js.t) event_listener
Create an event handler that invokes the provided function.
If the handler returns false, the default action is prevented.
val full_handler : ('a -> (#event as 'b) Js.t -> bool Js.t) ->
('a, 'b Js.t) event_listener
Create an event handler that invokes the provided function.
The event target (implicit parameter this
) is also passed as
argument to the function.
val invoke_handler : ('a, 'b) event_listener -> 'a -> 'b -> bool Js.t
Invoke an existing handler. Useful to chain event handlers.
val eventTarget : #event Js.t -> element Js.t
Returns which HTML element is the target of this event.
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
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
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