Declaration of the Document Object Model for the JavaScript backend.
EventTarget = ref EventTargetObj
Window = ref WindowObj
Frame = ref FrameObj
ClassList = ref ClassListObj
NodeType = enum ElementNode = 1, AttributeNode, TextNode, CDATANode, EntityRefNode, EntityNode, ProcessingInstructionNode, CommentNode, DocumentNode, DocumentTypeNode, DocumentFragmentNode, NotationNode
Node = ref NodeObj
Document = ref DocumentObj
Element = ref ElementObj
HtmlElement = ref object of Element contentEditable*: cstring isContentEditable*: bool dir*: cstring offsetHeight*: int offsetWidth*: int offsetLeft*: int offsetTop*: int
LinkElement = ref LinkObj
EmbedElement = ref EmbedObj
AnchorElement = ref AnchorObj
OptionElement = ref OptionObj
TextAreaElement = ref object of ElementObj value*: cstring selectionStart*, selectionEnd*: int selectionDirection*: cstring rows*, cols*: int
FormElement = ref FormObj
ImageElement = ref ImageObj
Style = ref StyleObj
Event = ref EventObj
TouchList {...}{.importc.} = ref object of RootObj
length*: intTouchEvent {...}{.importc.} = ref object of Event
changedTouches*, targetTouches*, touches*: TouchListTouch {...}{.importc.} = ref object of RootObj
identifier*: int
screenX*, screenY*, clientX*, clientY*, pageX*, pageY*: int
target*: Element
radiusX*, radiusY*: int
rotationAngle*: int
force*: floatLocation = ref LocationObj
History = ref HistoryObj
Navigator = ref NavigatorObj
TPlugin {...}{.importc.} = object of RootObj
description*: cstring
filename*: cstring
name*: cstringTMimeType {...}{.importc.} = object of RootObj
description*: cstring
enabledPlugin*: ref TPlugin
suffixes*: seq[cstring]
`type`*: cstringTLocationBar {...}{.importc.} = object of RootObj
visible*: boolTMenuBar = TLocationBar
TPersonalBar = TLocationBar
TScrollBars = TLocationBar
TToolBar = TLocationBar
TStatusBar = TLocationBar
TTimeOut {...}{.importc.} = object of RootObjTInterval {...}{.importc.} = object of RootObjAddEventListenerOptions = object capture*: bool once*: bool passive*: bool
BoundingRect {...}{.importc.} = ref object
top*, bottom*, left*, right*, x*, y*, width*, height*: floatPerformanceMemory {...}{.importc.} = ref object
jsHeapSizeLimit*: float
totalJSHeapSize*: float
usedJSHeapSize*: floatPerformanceTiming {...}{.importc.} = ref object
connectStart*: float
domComplete*: float
domContentLoadedEventEnd*: float
domContentLoadedEventStart*: float
domInteractive*: float
domLoading*: float
domainLookupEnd*: float
domainLookupStart*: float
fetchStart*: float
loadEventEnd*: float
loadEventStart*: float
navigationStart*: float
redirectEnd*: float
redirectStart*: float
requestStart*: float
responseEnd*: float
responseStart*: float
secureConnectionStart*: float
unloadEventEnd*: float
unloadEventStart*: floatPerformance {...}{.importc.} = ref object
memory*: PerformanceMemory
timing*: PerformanceTimingTEventHandlers {...}{.deprecated.} = EventTargetObjTWindow {...}{.deprecated.} = WindowObjTFrame {...}{.deprecated.} = FrameObjTNode {...}{.deprecated.} = NodeObjTDocument {...}{.deprecated.} = DocumentObjTElement {...}{.deprecated.} = ElementObjTLink {...}{.deprecated.} = LinkObjTEmbed {...}{.deprecated.} = EmbedObjTAnchor {...}{.deprecated.} = AnchorObjTOption {...}{.deprecated.} = OptionObjTForm {...}{.deprecated.} = FormObjTImage {...}{.deprecated.} = ImageObjTNodeType {...}{.deprecated.} = NodeTypeTEvent {...}{.deprecated.} = EventObjTLocation {...}{.deprecated.} = LocationObjTHistory {...}{.deprecated.} = HistoryObjTNavigator {...}{.deprecated.} = NavigatorObjTStyle {...}{.deprecated.} = StyleObjTScreen {...}{.deprecated.} = ScreenObjTApplet {...}{.importc, deprecated.} = object of RootObjwindow: Window
document: Document
navigator: Navigator
screen: Screen
proc addEventListener(et: EventTarget; ev: cstring; cb: proc (ev: Event);
useCapture: bool = false)proc addEventListener(et: EventTarget; ev: cstring; cb: proc (ev: Event);
options: AddEventListenerOptions)proc removeEventListener(et: EventTarget; ev: cstring; cb: proc (ev: Event);
useCapture: bool = false)proc dispatchEvent(et: EventTarget; ev: Event)
proc alert(w: Window; msg: cstring)
proc back(w: Window)
proc blur(w: Window)
proc captureEvents(w: Window; eventMask: int) {...}{.deprecated.}proc clearInterval(w: Window; interval: ref TInterval)
proc clearTimeout(w: Window; timeout: ref TTimeOut)
proc close(w: Window)
proc confirm(w: Window; msg: cstring): bool
proc disableExternalCapture(w: Window)
proc enableExternalCapture(w: Window)
proc find(w: Window; text: cstring; caseSensitive = false; backwards = false)
proc focus(w: Window)
proc forward(w: Window)
proc handleEvent(w: Window; e: Event)
proc home(w: Window)
proc moveBy(w: Window; x, y: int)
proc moveTo(w: Window; x, y: int)
proc open(w: Window; uri, windowname: cstring; properties: cstring = nil): Window
proc print(w: Window)
proc prompt(w: Window; text, default: cstring): cstring
proc releaseEvents(w: Window; eventMask: int) {...}{.deprecated.}proc resizeBy(w: Window; x, y: int)
proc resizeTo(w: Window; x, y: int)
proc routeEvent(w: Window; event: Event)
proc scrollBy(w: Window; x, y: int)
proc scrollTo(w: Window; x, y: int)
proc setInterval(w: Window; code: cstring; pause: int): ref TInterval
proc setInterval(w: Window; function: proc (); pause: int): ref TInterval
proc setTimeout(w: Window; code: cstring; pause: int): ref TTimeOut
proc setTimeout(w: Window; function: proc (); pause: int): ref TInterval
proc stop(w: Window)
proc requestAnimationFrame(w: Window; function: proc (time: float)): int
proc cancelAnimationFrame(w: Window; id: int)
proc appendChild(n, child: Node)
proc appendData(n: Node; data: cstring)
proc cloneNode(n: Node; copyContent: bool): Node
proc deleteData(n: Node; start, len: int)
proc getAttribute(n: Node; attr: cstring): cstring
proc getAttributeNode(n: Node; attr: cstring): Node
proc getBoundingClientRect(e: Node): BoundingRect
proc hasChildNodes(n: Node): bool
proc insertBefore(n, newNode, before: Node)
proc insertData(n: Node; position: int; data: cstring)
proc removeAttribute(n: Node; attr: cstring)
proc removeAttributeNode(n, attr: Node)
proc removeChild(n, child: Node)
proc replaceChild(n, newNode, oldNode: Node)
proc replaceData(n: Node; start, len: int; text: cstring)
proc scrollIntoView(n: Node; alignToTop: bool = true)
proc setAttribute(n: Node; name, value: cstring)
proc setAttributeNode(n: Node; attr: Node)
proc captureEvents(d: Document; eventMask: int) {...}{.deprecated.}proc createAttribute(d: Document; identifier: cstring): Node
proc createElement(d: Document; identifier: cstring): Element
proc createTextNode(d: Document; identifier: cstring): Node
proc getElementById(d: Document; id: cstring): Element
proc getElementsByName(d: Document; name: cstring): seq[Element]
proc getElementsByTagName(d: Document; name: cstring): seq[Element]
proc getElementsByClassName(d: Document; name: cstring): seq[Element]
proc getSelection(d: Document): cstring
proc handleEvent(d: Document; event: Event)
proc open(d: Document)
proc releaseEvents(d: Document; eventMask: int) {...}{.deprecated.}proc routeEvent(d: Document; event: Event)
proc write(d: Document; text: cstring)
proc writeln(d: Document; text: cstring)
proc querySelector(d: Document; selectors: cstring): Element
proc querySelectorAll(d: Document; selectors: cstring): seq[Element]
proc blur(e: Element)
proc click(e: Element)
proc focus(e: Element)
proc handleEvent(e: Element; event: Event)
proc select(e: Element)
proc getElementsByTagName(e: Element; name: cstring): seq[Element]
proc getElementsByClassName(e: Element; name: cstring): seq[Element]
proc reset(f: FormElement)
proc submit(f: FormElement)
proc play(e: EmbedElement)
proc stop(e: EmbedElement)
proc reload(loc: Location)
proc replace(loc: Location; s: cstring)
proc back(h: History)
proc forward(h: History)
proc go(h: History; pagesToJump: int)
proc pushState[T](h: History; stateObject: T; title, url: cstring)
proc javaEnabled(h: Navigator): bool
proc add(c: ClassList; class: cstring)
proc remove(c: ClassList; class: cstring)
proc contains(c: ClassList; class: cstring): bool
proc toggle(c: ClassList; class: cstring)
proc getAttribute(s: Style; attr: cstring; caseSensitive = false): cstring
proc removeAttribute(s: Style; attr: cstring; caseSensitive = false)
proc setAttribute(s: Style; attr, value: cstring; caseSensitive = false)
proc preventDefault(ev: Event)
proc identifiedTouch(list: TouchList): Touch
proc item(list: TouchList; i: int): Touch
proc now(p: Performance): float
proc decodeURI(uri: cstring): cstring {...}{.importc, nodecl.}proc encodeURI(uri: cstring): cstring {...}{.importc, nodecl.}proc escape(uri: cstring): cstring {...}{.importc, nodecl.}proc unescape(uri: cstring): cstring {...}{.importc, nodecl.}proc decodeURIComponent(uri: cstring): cstring {...}{.importc, nodecl.}proc encodeURIComponent(uri: cstring): cstring {...}{.importc, nodecl.}proc isFinite(x: BiggestFloat): bool {...}{.importc, nodecl.}proc isNaN(x: BiggestFloat): bool {...}{.importc, nodecl.}proc parseFloat(s: cstring): BiggestFloat {...}{.importc, nodecl.}proc parseInt(s: cstring): int {...}{.importc, nodecl.}proc parseInt(s: cstring; radix: int): int {...}{.importc, nodecl.}proc newEvent(name: cstring): Event {...}{.importcpp: "new Event(@)", constructor.}
© 2006–2018 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/dom.html