diff options
author | Juan Carlos <juancarlospaco@gmail.com> | 2020-04-13 10:07:52 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-13 14:07:52 +0100 |
commit | 0a84219b3ec3b2deccc141bed4aee0252bc12ca7 (patch) | |
tree | 92f4249fd70804aa9071bdeedf2445b5462ce277 /lib/js | |
parent | 255698deee403ae80b26baa567043a07dc3c7404 (diff) | |
download | Nim-0a84219b3ec3b2deccc141bed4aee0252bc12ca7.tar.gz |
Add jsdomparser (#13920)
* Add jsdomparser * Add jsdomparser * Add jsdomparser * https://github.com/nim-lang/Nim/pull/13920#issuecomment-610727142 * https://github.com/nim-lang/Nim/pull/13920#issuecomment-610727142 * https://github.com/nim-lang/Nim/pull/13920#issuecomment-610727142 * https://github.com/nim-lang/Nim/pull/13920#discussion_r405932909 * https://github.com/nim-lang/Nim/pull/13920#discussion_r406502592
Diffstat (limited to 'lib/js')
-rw-r--r-- | lib/js/dom.nim | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/lib/js/dom.nim b/lib/js/dom.nim index 92cc038c9..280e47d82 100644 --- a/lib/js/dom.nim +++ b/lib/js/dom.nim @@ -9,7 +9,7 @@ ## Declaration of the Document Object Model for the `JavaScript backend ## <backends.html#backends-the-javascript-target>`_. - +include "system/inclrtl" when not defined(js) and not defined(Nimdoc): {.error: "This module only works on the JavaScript platform".} @@ -985,6 +985,16 @@ type once*: bool passive*: bool +since (1, 3): + type DomParser* = ref object ## \ + ## DOM Parser object (defined on browser only, may not be on NodeJS). + ## * https://developer.mozilla.org/en-US/docs/Web/API/DOMParser + ## + ## .. code-block:: nim + ## let prsr = newDomParser() + ## discard prsr.parseFromString("<html><marquee>Hello World</marquee></html>".cstring, "text/html".cstring) + + proc id*(n: Node): cstring {.importcpp: "#.id", nodecl.} proc `id=`*(n: Node; x: cstring) {.importcpp: "#.id = #", nodecl.} proc class*(n: Node): cstring {.importcpp: "#.className", nodecl.} @@ -1297,3 +1307,10 @@ proc offsetHeight*(e: Node): int {.importcpp: "#.offsetHeight", nodecl.} proc offsetWidth*(e: Node): int {.importcpp: "#.offsetWidth", nodecl.} proc offsetTop*(e: Node): int {.importcpp: "#.offsetTop", nodecl.} proc offsetLeft*(e: Node): int {.importcpp: "#.offsetLeft", nodecl.} + +since (1, 3): + func newDomParser*(): DOMParser {.importcpp: "(new DOMParser())".} + ## DOM Parser constructor. + + func parseFromString*(this: DOMParser; str: cstring; mimeType: cstring): Document {.importcpp.} + ## Parse from string to `Document`. |