Important changes to Tiny Cloud pricing > Find out more

NOTE: TinyMCE 5 reached End of Support in April 2023. No more bug fixes, security updates, or new features will be introduced to TinyMCE 5. We recommend you upgrade to TinyMCE 6 or consider TinyMCE 5 Long Term Support (LTS) if you need more time.

tinymce.html.Node

This class is a minimalistic implementation of a DOM like node used by the DomParser class.

Examples

var node = new tinymce.html.Node('strong', 1);
someRoot.append(node);

Constructors

name summary defined by
Node() Constructs a new Node instance. tinymce.html.Node

Methods

name summary defined by
append() Appends a new node as a child of the current node. tinymce.html.Node
attr() Gets/sets or removes an attribute by name. tinymce.html.Node
children() Get all children of this node. tinymce.html.Node
clone() Does a shallow clones the node into a new node. It will also exclude id attributes since there should only be one id per document. tinymce.html.Node
create() Creates a node of a specific type. tinymce.html.Node
empty() Removes all children of the current node. tinymce.html.Node
getAll() Get all descendants by name. tinymce.html.Node
insert() Inserts a node at a specific position as a child of this node. tinymce.html.Node
isEmpty() Returns true/false if the node is to be considered empty or not. tinymce.html.Node
remove() Removes the node from it's parent. tinymce.html.Node
replace() Replaces the current node with the specified one. tinymce.html.Node
unwrap() Unwraps the node in other words it removes the node but keeps the children. tinymce.html.Node
walk() Walks to the next or previous node and returns that node or null if it wasn't found. tinymce.html.Node
wrap() Wraps the node in in another node. tinymce.html.Node

Constructors

Node

public constructor function Node(name:String, type:Number)

Constructs a new Node instance.

Parameters
  • name (String) - Name of the node type.
  • type (Number) - Numeric type representing the node.

Methods

append

append(node:tinymce.html.Node):tinymce.html.Node

Appends a new node as a child of the current node.

Examples
node.append(someNode);
Parameters
Return value

attr

attr(name:String, value:String):String, tinymce.html.Node

Gets/sets or removes an attribute by name.

Examples
someNode.attr("name", "value"); // Sets an attribute
console.log(someNode.attr("name")); // Gets an attribute
someNode.attr("name", null); // Removes an attribute
Parameters
  • name (String) - Attribute name to set or get.
  • value (String) - Optional value to set.
Return value
  • String - String or undefined on a get operation or the current node on a set operation.
  • tinymce.html.Node - String or undefined on a get operation or the current node on a set operation.

children

children():Array

Get all children of this node.

Return value
  • Array - Array containing child nodes.

clone

clone():tinymce.html.Node

Does a shallow clones the node into a new node. It will also exclude id attributes since there should only be one id per document.

Examples
var clonedNode = node.clone();
Return value

create

create(name:String, attrs:Object)

Creates a node of a specific type.

Parameters
  • name (String) - Name of the node type to create for example "b" or "#text".
  • attrs (Object) - Name/value collection of attributes that will be applied to elements.

empty

empty():tinymce.html.Node

Removes all children of the current node.

Return value

getAll

getAll(name:String):Array

Get all descendants by name.

Parameters
  • name (String) - Name of the descendant nodes to collect.
Return value
  • Array - Array with descendant nodes matching the specified name.

insert

insert(node:tinymce.html.Node, refNode:tinymce.html.Node, before:Boolean):tinymce.html.Node

Inserts a node at a specific position as a child of this node.

Examples
parentNode.insert(newChildNode, oldChildNode);
Parameters
  • node (tinymce.html.Node) - Node to insert as a child of this node.
  • refNode (tinymce.html.Node) - Reference node to set node before/after.
  • before (Boolean) - Optional state to insert the node before the reference node.
Return value

isEmpty

isEmpty(elements:Object, whitespace:Object, predicate:function):Boolean

Returns true/false if the node is to be considered empty or not.

Examples
node.isEmpty({img: true});
Parameters
  • elements (Object) - Name/value object with elements that are automatically treated as non empty elements.
  • whitespace (Object) - Name/value object with elements that are automatically treated whitespace preservables.
  • predicate (function) - Optional predicate that gets called after the other rules determine that the node is empty. Should return true if the node is a content node.
Return value
  • Boolean - true/false if the node is empty or not.

remove

remove():tinymce.html.Node

Removes the node from it's parent.

Examples
node.remove();
Return value

replace

replace(node:tinymce.html.Node):tinymce.html.Node

Replaces the current node with the specified one.

Examples
someNode.replace(someNewNode);
Parameters
Return value

unwrap

unwrap()

Unwraps the node in other words it removes the node but keeps the children.

Examples
node.unwrap();

walk

walk(prev:Boolean):tinymce.html.Node

Walks to the next or previous node and returns that node or null if it wasn't found.

Parameters
  • prev (Boolean) - Optional previous node state defaults to false.
Return value

wrap

wrap()

Wraps the node in in another node.

Examples
node.wrap(wrapperNode);

Can't find what you're looking for? Let us know.

Except as otherwise noted, the content of this page is licensed under the Creative Commons BY-NC-SA 3.0 License, and code samples are licensed under the Apache 2.0 License.