Classes
Members
# (static, constant) ATTRIBUTE_OBJECTLINK :string
- string
- Since:
- 1.9.0
# (static, constant) ATTRIBUTE_OPTIONS :string
- string
- Since:
- 1.8.0
# (static, constant) ATTRIBUTE_PREFIX :string
- string
- Since:
- 1.8.0
# (static, constant) ATTRIBUTE_THEME_NAME :string
- string
# (static, constant) ATTRIBUTE_THEME_PREFIX :string
- string
- Since:
- 1.8.0
# (static, constant) ATTRIBUTE_UPDATER_ATTRIBUTES :string
- string
- Since:
- 1.8.0
# (static, constant) ATTRIBUTE_UPDATER_BIND :string
- string
- Since:
- 1.9.0
# (static, constant) ATTRIBUTE_UPDATER_INSERT :string
- string
- Since:
- 1.8.0
# (static, constant) ATTRIBUTE_UPDATER_INSERT_REFERENCE :string
- string
- Since:
- 1.8.0
# (static, constant) ATTRIBUTE_UPDATER_REMOVE :string
- string
- Since:
- 1.8.0
# (static, constant) ATTRIBUTE_UPDATER_REPLACE :string
- string
- Since:
- 1.8.0
# (static, constant) ATTRIBUTEPREFIX :string
attribute prefix
- string
# (static, constant) DEFAULT_THEME :string
default theme
- string
Methods
# (static) addAttributeToken(element, key, token) → {HTMLElement}
this method can be used to add a token to an attribute. Tokens are always separated by a space.
You can call the method via the monster namespace new Monster.DOM.addAttributeToken().
<script type="module">
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
Monster.DOM.addAttributeToken();
</script>
Alternatively, you can also integrate this function individually.
<script type="module">
import {addAttributeToken} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
addAttributeToken();
</script>
| Name | Type | Description |
|---|---|---|
element |
HTMLElement | |
key |
string | |
token |
string |
- Since:
- 1.9.0
- Copyright:
- schukai GmbH
- Type
- HTMLElement
# (static) addToObjectLink(element, symbol, object) → {boolean}
You can call the method via the monster namespace new Monster.DOM.addToObjectLink().
<script type="module">
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
Monster.DOM.addToObjectLink();
</script>
Alternatively, you can also integrate this function individually.
<script type="module">
import {addToObjectLink} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
addToObjectLink();
</script>
| Name | Type | Description |
|---|---|---|
element |
HTMLElement | |
symbol |
Symbol | |
object |
Object |
- Since:
- 1.9.0
- Copyright:
- schukai GmbH
- Type
- boolean
# (static) clearAttributeTokens(element, key) → {HTMLElement}
Tokens are always separated by a space.
You can call the method via the monster namespace new Monster.DOM.clearAttributeTokens().
<script type="module">
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
Monster.DOM.clearAttributeTokens();
</script>
Alternatively, you can also integrate this function individually.
<script type="module">
import {clearAttributeTokens} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
clearAttributeTokens();
</script>
| Name | Type | Description |
|---|---|---|
element |
HTMLElement | |
key |
string |
- Since:
- 1.9.0
- Copyright:
- schukai GmbH
- Type
- HTMLElement
# (static) containsAttributeToken(element, key, token) → {boolean}
This method can be used to determine whether an attribute has a token.
Tokens are always separated by a space.
You can call the method via the monster namespace new Monster.DOM.containsAttributeToken().
<script type="module">
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
Monster.DOM.containsAttributeToken();
</script>
Alternatively, you can also integrate this function individually.
<script type="module">
import {containsAttributeToken} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
containsAttributeToken();
</script>
| Name | Type | Description |
|---|---|---|
element |
HTMLElement | |
key |
string | |
token |
string |
- Since:
- 1.9.0
- Copyright:
- schukai GmbH
- Type
- boolean
# (static) findDocumentTemplate(id) → {Template}
you can call the method via the monster namespace Monster.DOM.findDocumentTemplate().
<script type="module">
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/template.js';
console.log(Monster.DOM.findDocumentTemplate())
</script>
Alternatively, you can also integrate this function individually.
<script type="module">
import {findTemplate} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/template.js';
console.log(findDocumentTemplate())
</script>
| Name | Type | Description |
|---|---|---|
id |
string |
- Since:
- 1.7.0
- Copyright:
- schukai GmbH
-
-
template id not found.
- Type
- Error
-
-
-
value is not a string
- Type
- TypeError
-
- Type
- Template
# (static) getDocument() → {object}
this method fetches the document object
<script type="module">
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/util.js';
console.log(Monster.DOM.getDocument())
</script>
Alternatively, you can also integrate this function individually.
<script type="module">
import {getDocument} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/util.js';
console.log(getDocument())
</script>
in nodejs this functionality can be performed with jsdom.
import {JSDOM} from "jsdom"
if (typeof window !== "object") {
const {window} = new JSDOM('', {
url: 'http://example.com/',
pretendToBeVisual: true
});
[
'self',
'document',
'Document',
'Node',
'Element',
'HTMLElement',
'DocumentFragment',
'DOMParser',
'XMLSerializer',
'NodeFilter',
'InputEvent',
'CustomEvent'
].forEach(key => (getGlobal()[key] = window[key]));
}
- Since:
- 1.6.0
- Copyright:
- schukai GmbH
-
not supported environment
- Type
- Error
- Type
- object
# (static) getDocumentFragmentFromString() → {DocumentFragment}
this method fetches the document object
<script type="module">
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/util.js';
console.log(Monster.DOM.getDocumentFragmentFromString())
</script>
Alternatively, you can also integrate this function individually.
<script type="module">
import {getDocumentFragmentFromString} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/util.js';
console.log(getDocumentFragmentFromString('<div></div>'))
</script>
in nodejs this functionality can be performed with jsdom.
import {JSDOM} from "jsdom"
if (typeof window !== "object") {
const {window} = new JSDOM('', {
url: 'http://example.com/',
pretendToBeVisual: true
});
[
'self',
'document',
'Document',
'Node',
'Element',
'HTMLElement',
'DocumentFragment',
'DOMParser',
'XMLSerializer',
'NodeFilter',
'InputEvent',
'CustomEvent'
].forEach(key => (getGlobal()[key] = window[key]));
}
- Since:
- 1.6.0
- Copyright:
- schukai GmbH
-
-
not supported environment
- Type
- Error
-
-
-
value is not a string
- Type
- TypeError
-
- Type
- DocumentFragment
# (static) getHandleFromNode(node) → {Handle|undefined}
get the handle of a node
if a node is specified without a handler, a recursive search upwards is performed until the corresponding handle is found, or undefined is returned.
you can call the method via the monster namespace Monster.DOM.getHandleFromNode().
<script type="module">
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/handle.js';
console.log(Monster.DOM.getHandleFromNode())
</script>
Alternatively, you can also integrate this function individually.
<script type="module">
import {getHandleFromNode} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/handle.js';
console.log(getHandleFromNode())
</script>
| Name | Type | Description |
|---|---|---|
node |
Node |
- Since:
- 1.6.0
- Copyright:
- schukai GmbH
-
value is not an instance of Node
- Type
- TypeError
- Type
- Handle | undefined
# (static) getLinkedObjects(element, symbol) → {Iterator}
The ObjectLink can be used to attach objects to HTMLElements. The elements are kept in a set under a unique symbol and can be read via an iterator {@see getLinkedObjects}.
In addition, elements with an objectLink receive the attribute data-monster-objectlink.
With the method {@see addToObjectLink} the objects can be added.
You can call the method via the monster namespace new Monster.DOM.getLinkedObjects().
<script type="module">
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
Monster.DOM.getLinkedObjects();
</script>
Alternatively, you can also integrate this function individually.
<script type="module">
import {getLinkedObjects} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
getLinkedObjects();
</script>
| Name | Type | Description |
|---|---|---|
element |
HTMLElement | |
symbol |
Symbol |
- Since:
- 1.9.0
- Copyright:
- schukai GmbH
-
there is no object link for symbol
- Type
- Error
- Type
- Iterator
# (static) getWindow() → {object}
this method fetches the window object
<script type="module">
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/util.js';
console.log(Monster.DOM.getWindow())
</script>
Alternatively, you can also integrate this function individually.
<script type="module">
import {getWindow} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/util.js';
console.log(getWindow(null))
</script>
in nodejs this functionality can be performed with jsdom.
import {JSDOM} from "jsdom"
if (typeof window !== "object") {
const {window} = new JSDOM('', {
url: 'http://example.com/',
pretendToBeVisual: true
});
getGlobal()['window']=window;
[
'self',
'document',
'Document',
'Node',
'Element',
'HTMLElement',
'DocumentFragment',
'DOMParser',
'XMLSerializer',
'NodeFilter',
'InputEvent',
'CustomEvent'
].forEach(key => (getGlobal()[key] = window[key]));
}
- Since:
- 1.6.0
- Copyright:
- schukai GmbH
-
not supported environment
- Type
- Error
- Type
- object
# (static) hasObjectLink(element, symbol) → {boolean}
You can call the method via the monster namespace new Monster.DOM.hasObjectLink().
<script type="module">
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
Monster.DOM.hasObjectLink();
</script>
Alternatively, you can also integrate this function individually.
<script type="module">
import {hasObjectLink} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
hasObjectLink();
</script>
| Name | Type | Description |
|---|---|---|
element |
HTMLElement | |
symbol |
Symbol |
- Since:
- 1.9.0
- Copyright:
- schukai GmbH
- Type
- boolean
# (static) registerCustomElement(element) → {void}
This method registers a new element. The string returned by CustomElement.getTag() is used as the tag.
| Name | Type | Description |
|---|---|---|
element |
CustomElement |
- Since:
- 1.7.0
- Copyright:
- schukai GmbH
-
Failed to execute 'define' on 'CustomElementRegistry': is not a valid custom element name
- Type
- DOMException
- Type
- void
# (static) removeAttributeToken(element, key, token) → {HTMLElement}
This function can be used to remove tokens from an attribute.
Tokens are always separated by a space.
You can call the method via the monster namespace new Monster.DOM.removeAttributeToken().
<script type="module">
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
Monster.DOM.removeAttributeToken();
</script>
Alternatively, you can also integrate this function individually.
<script type="module">
import {removeAttributeToken} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
removeAttributeToken();
</script>
| Name | Type | Description |
|---|---|---|
element |
HTMLElement | |
key |
string | |
token |
string |
- Since:
- 1.9.0
- Copyright:
- schukai GmbH
- Type
- HTMLElement
# (static) removeObjectLink(element, symbol) → {boolean}
You can call the method via the monster namespace new Monster.DOM.removeObjectLink().
<script type="module">
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
Monster.DOM.removeObjectLink();
</script>
Alternatively, you can also integrate this function individually.
<script type="module">
import {removeObjectLink} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
removeObjectLink();
</script>
| Name | Type | Description |
|---|---|---|
element |
HTMLElement | |
symbol |
Symbol |
- Since:
- 1.9.0
- Copyright:
- schukai GmbH
- Type
- boolean
# (static) replaceAttributeToken(element, key, from, to) → {HTMLElement}
Tokens are always separated by a space.
You can call the method via the monster namespace new Monster.DOM.replaceAttributeToken().
<script type="module">
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
Monster.DOM.replaceAttributeToken();
</script>
Alternatively, you can also integrate this function individually.
<script type="module">
import {replaceAttributeToken} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
replaceAttributeToken();
</script>
| Name | Type | Description |
|---|---|---|
element |
HTMLElement | |
key |
string | |
from |
string | |
to |
string |
- Since:
- 1.9.0
- Copyright:
- schukai GmbH
- Type
- HTMLElement
# (static) toggleAttributeToken(element, key, token) → {HTMLElement}
With this method tokens in an attribute can be switched on or off. For example, classes can be switched on and off in the elements class attribute.
Tokens are always separated by a space.
You can call the method via the monster namespace new Monster.DOM.toggleAttributeToken().
<script type="module">
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
Monster.DOM.toggleAttributeToken();
</script>
Alternatively, you can also integrate this function individually.
<script type="module">
import {toggleAttributeToken} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.9.0/dist/modules/dom/attributes.js';
toggleAttributeToken();
</script>
| Name | Type | Description |
|---|---|---|
element |
HTMLElement | |
key |
string | |
token |
string |
- Since:
- 1.9.0
- Copyright:
- schukai GmbH
- Type
- HTMLElement