module Hyalite::DOM::Node
Attributes
native[R]
Public Class Methods
create(node)
click to toggle source
# File lib/hyalite/dom/node.rb, line 7 def self.create(node) @classes ||= [nil, Element, nil, Text, nil, nil, nil, nil, nil, Document, nil, nil] if klass = @classes[`node.nodeType`] klass.new(node) else raise ArgumentError, 'cannot instantiate a non derived Node object' end end
Public Instance Methods
<<(child)
click to toggle source
# File lib/hyalite/dom/node.rb, line 37 def <<(child) `self.native.appendChild(child.native)` end
==(other)
click to toggle source
# File lib/hyalite/dom/node.rb, line 69 def ==(other) `self.native === other.native` end
attr(name)
click to toggle source
# File lib/hyalite/dom/node.rb, line 29 def attr(name) `self.native[name]` end
children()
click to toggle source
# File lib/hyalite/dom/node.rb, line 56 def children Collection.new `self.native.childNodes` end
clear()
click to toggle source
# File lib/hyalite/dom/node.rb, line 41 def clear %x( var len = self.native.childNodes.length; for (var i = 0; i < len; i++) { self.native.childNodes[0].remove(); } ) end
document?()
click to toggle source
# File lib/hyalite/dom/node.rb, line 17 def document? false end
element?()
click to toggle source
# File lib/hyalite/dom/node.rb, line 21 def element? false end
next_sibling()
click to toggle source
# File lib/hyalite/dom/node.rb, line 64 def next_sibling sib = `self.native.nextSibling` Node.create(sib) if sib end
node_name()
click to toggle source
# File lib/hyalite/dom/node.rb, line 33 def node_name `self.native.tagName` end
parent()
click to toggle source
# File lib/hyalite/dom/node.rb, line 50 def parent if parent = `self.native.parentNode` Node.create(parent) end end
remove()
click to toggle source
# File lib/hyalite/dom/node.rb, line 60 def remove `self.native.remove()` end
text?()
click to toggle source
# File lib/hyalite/dom/node.rb, line 25 def text? false end