Method: Browser::DOM::Node.new

Defined in:
opal/browser/dom/node.rb

.new(value) ⇒ Node

Wrap a native DOM node.

Parameters:

  • value (native)

    the native DOM node

Returns:



28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'opal/browser/dom/node.rb', line 28

def self.new(value)
  if self == Node
    @classes ||= [nil, Element, Attribute, Text, CDATA, nil, nil, nil, Comment, Document, nil, DocumentFragment]

    if klass = @classes[`value.nodeType`]
      klass.new(value)
    else
      raise ArgumentError, 'cannot instantiate a non derived Node object'
    end
  else
    super
  end
end