Module: IEgrip::ElementChild
Constant Summary
Constants included
from Retry
Retry::RETRY_INTERVAL
Instance Method Summary
collapse
Methods included from Retry
#retryCheck, #retryGetTarget
Instance Method Details
#childElements ⇒ Object
126
127
128
129
130
131
|
# File 'lib/iegrip.rb', line 126
def childElements
retryGetTarget {
raw_childNodes = @raw_object.childNodes
raw_childNodes ? HTMLElementCollection.new(raw_childNodes, @ie_obj) : nil
}
end
|
#childNodes ⇒ Object
119
120
121
122
123
124
|
# File 'lib/iegrip.rb', line 119
def childNodes
retryGetTarget {
raw_childNodes = @raw_object.childNodes
raw_childNodes ? NodeList.new(raw_childNodes, @ie_obj) : nil
}
end
|
#contains(node) ⇒ Object
174
175
176
|
# File 'lib/iegrip.rb', line 174
def contains(node)
retryCheck { @raw_object.contains(toRaw(node)) }
end
|
#firstChild ⇒ Object
147
148
149
150
151
152
|
# File 'lib/iegrip.rb', line 147
def firstChild
retryGetTarget {
raw_node = @raw_object.firstChild()
raw_node ? switch_node_and_element(raw_node) : nil
}
end
|
#hasChildElements ⇒ Object
166
167
168
169
170
171
172
|
# File 'lib/iegrip.rb', line 166
def hasChildElements()
chileNodes = retryGetTarget {@raw_object.childNodes}
chileNodes.each {|subnode|
return true if (subnode.nodeType != 3) and (subnode.nodeType != 8)
}
false
end
|
#hasChildNodes ⇒ Object
161
162
163
164
|
# File 'lib/iegrip.rb', line 161
def hasChildNodes()
chileNodes = retryGetTarget {@raw_object.childNodes}
chileNodes.length > 0
end
|
#isEqualNode(node) ⇒ Object
178
179
180
|
# File 'lib/iegrip.rb', line 178
def isEqualNode(node)
retryCheck { @raw_object.isEqualNode(toRaw(node)) }
end
|
#lastChild ⇒ Object
154
155
156
157
158
159
|
# File 'lib/iegrip.rb', line 154
def lastChild
retryGetTarget {
raw_node = @raw_object.lastChild()
raw_node ? switch_node_and_element(raw_node) : nil
}
end
|
#nextSibling ⇒ Object
140
141
142
143
144
145
|
# File 'lib/iegrip.rb', line 140
def nextSibling
retryGetTarget {
raw_node = @raw_object.nextSibling()
raw_node ? switch_node_and_element(raw_node) : nil
}
end
|
#previousSibling ⇒ Object
133
134
135
136
137
138
|
# File 'lib/iegrip.rb', line 133
def previousSibling
retryGetTarget {
raw_node = @raw_object.previousSibling()
raw_node ? switch_node_and_element(raw_node) : nil
}
end
|
#struct(level = 0) ⇒ Object
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
|
# File 'lib/iegrip.rb', line 182
def struct(level=0)
struct = []
self.childElements.each {|subelement|
inner,outer = get_inner(subelement)
if subelement.hasChildElements()
sub_struct = subelement.struct(level+1)
if sub_struct.size > 0
struct.push (" " * level) + "<#{inner}>"
struct += sub_struct
struct.push (" " * level) + "</#{subelement.tagName}>"
else
struct.push (" " * level) + "<#{inner} />"
end
else
if outer
struct.push (" " * level) + "<#{inner}>#{outer}</#{subelement.tagName}>"
else
struct.push (" " * level) + "<#{inner} />"
end
end
}
return struct
end
|