watir-webdriver 0.7.0 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -2
  3. data/.travis.yml +2 -3
  4. data/CHANGES.md +10 -1
  5. data/Gemfile +1 -1
  6. data/README.md +22 -17
  7. data/Rakefile +55 -52
  8. data/lib/watir-webdriver.rb +3 -2
  9. data/lib/watir-webdriver/alert.rb +0 -1
  10. data/lib/watir-webdriver/atoms/README +1 -1
  11. data/lib/watir-webdriver/browser.rb +4 -5
  12. data/lib/watir-webdriver/cell_container.rb +2 -2
  13. data/lib/watir-webdriver/container.rb +2 -3
  14. data/lib/watir-webdriver/cookies.rb +8 -8
  15. data/lib/watir-webdriver/element_collection.rb +3 -4
  16. data/lib/watir-webdriver/elements/area.rb +0 -1
  17. data/lib/watir-webdriver/elements/button.rb +0 -1
  18. data/lib/watir-webdriver/elements/checkbox.rb +2 -4
  19. data/lib/watir-webdriver/elements/element.rb +69 -45
  20. data/lib/watir-webdriver/elements/file_field.rb +2 -3
  21. data/lib/watir-webdriver/elements/font.rb +2 -2
  22. data/lib/watir-webdriver/elements/form.rb +0 -1
  23. data/lib/watir-webdriver/elements/hidden.rb +2 -3
  24. data/lib/watir-webdriver/elements/html_elements.rb +2282 -0
  25. data/lib/watir-webdriver/elements/iframe.rb +6 -7
  26. data/lib/watir-webdriver/elements/image.rb +0 -1
  27. data/lib/watir-webdriver/elements/input.rb +0 -1
  28. data/lib/watir-webdriver/elements/link.rb +0 -1
  29. data/lib/watir-webdriver/elements/option.rb +3 -4
  30. data/lib/watir-webdriver/elements/radio.rb +2 -3
  31. data/lib/watir-webdriver/elements/select.rb +0 -1
  32. data/lib/watir-webdriver/elements/svg_elements.rb +787 -0
  33. data/lib/watir-webdriver/elements/table.rb +0 -2
  34. data/lib/watir-webdriver/elements/table_section.rb +1 -1
  35. data/lib/watir-webdriver/elements/text_field.rb +2 -3
  36. data/lib/watir-webdriver/exception.rb +0 -2
  37. data/lib/watir-webdriver/extensions/nokogiri.rb +1 -1
  38. data/lib/watir-webdriver/generator.rb +3 -0
  39. data/lib/watir-webdriver/generator/base.rb +11 -0
  40. data/lib/watir-webdriver/{html → generator/base}/generator.rb +23 -33
  41. data/lib/watir-webdriver/{html → generator/base}/idl_sorter.rb +3 -5
  42. data/lib/watir-webdriver/{html → generator/base}/spec_extractor.rb +15 -41
  43. data/lib/watir-webdriver/generator/base/util.rb +21 -0
  44. data/lib/watir-webdriver/{html → generator/base}/visitor.rb +15 -15
  45. data/lib/watir-webdriver/{html.rb → generator/html.rb} +3 -11
  46. data/lib/watir-webdriver/generator/html/generator.rb +36 -0
  47. data/lib/watir-webdriver/generator/html/spec_extractor.rb +50 -0
  48. data/lib/watir-webdriver/generator/html/visitor.rb +21 -0
  49. data/lib/watir-webdriver/generator/svg.rb +7 -0
  50. data/lib/watir-webdriver/generator/svg/generator.rb +38 -0
  51. data/lib/watir-webdriver/generator/svg/spec_extractor.rb +46 -0
  52. data/lib/watir-webdriver/generator/svg/visitor.rb +21 -0
  53. data/lib/watir-webdriver/has_window.rb +3 -3
  54. data/lib/watir-webdriver/locators/button_locator.rb +7 -2
  55. data/lib/watir-webdriver/locators/child_cell_locator.rb +1 -1
  56. data/lib/watir-webdriver/locators/child_row_locator.rb +1 -1
  57. data/lib/watir-webdriver/locators/element_locator.rb +44 -9
  58. data/lib/watir-webdriver/locators/text_area_locator.rb +4 -0
  59. data/lib/watir-webdriver/locators/text_field_locator.rb +7 -2
  60. data/lib/watir-webdriver/screenshot.rb +0 -1
  61. data/lib/watir-webdriver/version.rb +1 -1
  62. data/lib/watir-webdriver/wait.rb +10 -11
  63. data/lib/watir-webdriver/window.rb +5 -5
  64. data/lib/watir-webdriver/xpath_support.rb +0 -1
  65. data/spec/always_locate_spec.rb +4 -4
  66. data/spec/browser_spec.rb +3 -3
  67. data/spec/click_spec.rb +11 -4
  68. data/spec/container_spec.rb +2 -2
  69. data/spec/element_locator_spec.rb +145 -84
  70. data/spec/element_spec.rb +29 -16
  71. data/spec/html/clicks.html +3 -0
  72. data/spec/html/removed_element.html +7 -0
  73. data/spec/implementation.rb +5 -5
  74. data/spec/input_spec.rb +1 -1
  75. data/spec/spec_helper.rb +1 -2
  76. data/spec/special_chars_spec.rb +2 -2
  77. data/support/doctest_helper.rb +4 -4
  78. data/support/version_differ.rb +2 -2
  79. data/watir-webdriver.gemspec +3 -3
  80. metadata +27 -17
  81. data/lib/watir-webdriver/elements/generated.rb +0 -3106
  82. data/lib/watir-webdriver/html/util.rb +0 -22
data/spec/element_spec.rb CHANGED
@@ -4,7 +4,7 @@ describe Watir::Element do
4
4
 
5
5
  describe '#present?' do
6
6
  before do
7
- browser.goto(WatirSpec.url_for("wait.html", :needs_server => true))
7
+ browser.goto(WatirSpec.url_for("wait.html", needs_server: true))
8
8
  end
9
9
 
10
10
  it 'returns true if the element exists and is visible' do
@@ -20,7 +20,7 @@ describe Watir::Element do
20
20
  end
21
21
 
22
22
  it "returns false if the element is stale" do
23
- wd_element = browser.div(:id => "foo").wd
23
+ wd_element = browser.div(id: "foo").wd
24
24
 
25
25
  # simulate element going stale during lookup
26
26
  allow(browser.driver).to receive(:find_element).with(:id, 'foo') { wd_element }
@@ -33,7 +33,7 @@ describe Watir::Element do
33
33
 
34
34
  describe "#reset!" do
35
35
  it "successfully relocates collection elements after a reset!" do
36
- browser.goto(WatirSpec.url_for("wait.html", :needs_server => true))
36
+ browser.goto(WatirSpec.url_for("wait.html", needs_server: true))
37
37
  element = browser.div(:id, 'foo')
38
38
  expect(element).to exist
39
39
  browser.refresh
@@ -45,12 +45,12 @@ describe Watir::Element do
45
45
 
46
46
  describe "#exists?" do
47
47
  before do
48
- browser.goto WatirSpec.url_for('removed_element.html', :needs_server => true)
48
+ browser.goto WatirSpec.url_for('removed_element.html', needs_server: true)
49
49
  end
50
50
 
51
51
  it "does not propagate StaleElementReferenceErrors" do
52
- button = browser.button(:id => "remove-button")
53
- element = browser.div(:id => "text")
52
+ button = browser.button(id: "remove-button")
53
+ element = browser.div(id: "text")
54
54
 
55
55
  expect(element).to exist
56
56
  button.click
@@ -58,8 +58,8 @@ describe Watir::Element do
58
58
  end
59
59
 
60
60
  it "returns false when an element from a collection becomes stale" do
61
- button = browser.button(:id => "remove-button")
62
- text = browser.divs(:id => "text").first
61
+ button = browser.button(id: "remove-button")
62
+ text = browser.divs(id: "text").first
63
63
 
64
64
  expect(text).to exist
65
65
  button.click
@@ -67,7 +67,7 @@ describe Watir::Element do
67
67
  end
68
68
 
69
69
  it "returns false when an element becomes stale" do
70
- wd_element = browser.div(:id => "text").wd
70
+ wd_element = browser.div(id: "text").wd
71
71
 
72
72
  # simulate element going stale during lookup
73
73
  allow(browser.driver).to receive(:find_element).with(:id, 'text') { wd_element }
@@ -75,14 +75,27 @@ describe Watir::Element do
75
75
 
76
76
  expect(browser.div(:id, 'text')).to_not exist
77
77
  end
78
+
79
+ it "returns appropriate value when an ancestor element becomes stale" do
80
+ stale_element = browser.div(id: 'top').div(id: 'middle').div(id: 'bottom')
81
+ expect(stale_element.present?).to be true # look up and store @element for each element in hierarchy
82
+
83
+ grandparent = stale_element.instance_variable_get('@parent').instance_variable_get('@parent').instance_variable_get('@element')
84
+
85
+ # simulate element going stale during lookup
86
+ allow(grandparent).to receive('enabled?') { raise Selenium::WebDriver::Error::ObsoleteElementError }
87
+
88
+ browser.refresh
89
+ expect(stale_element.present?).to be Watir.always_locate?
90
+ end
78
91
  end
79
92
 
80
93
  describe "#element_call" do
81
94
 
82
95
  it 'handles exceptions when taking an action on an element that goes stale during execution' do
83
- browser.goto WatirSpec.url_for('removed_element.html', :needs_server => true)
96
+ browser.goto WatirSpec.url_for('removed_element.html', needs_server: true)
84
97
 
85
- watir_element = browser.div(:id => "text")
98
+ watir_element = browser.div(id: "text")
86
99
 
87
100
  # simulate element going stale after assert_exists and before action taken
88
101
  allow(watir_element).to receive(:text) do
@@ -101,12 +114,12 @@ describe Watir::Element do
101
114
  end
102
115
 
103
116
  describe "#hover" do
104
- not_compliant_on [:webdriver, :firefox, :synthesized_events],
105
- [:webdriver, :internet_explorer],
106
- [:webdriver, :iphone],
107
- [:webdriver, :safari] do
117
+ not_compliant_on %i(webdriver firefox synthesized_events),
118
+ %i(webdriver internet_explorer),
119
+ %i(webdriver iphone),
120
+ %i(webdriver safari) do
108
121
  it "should hover over the element" do
109
- browser.goto WatirSpec.url_for('hover.html', :needs_server => true)
122
+ browser.goto WatirSpec.url_for('hover.html', needs_server: true)
110
123
  link = browser.a
111
124
 
112
125
  expect(link.style("font-size")).to eq "10px"
@@ -12,5 +12,8 @@
12
12
  <body>
13
13
  <div id="click-logger">click me</div>
14
14
  <div id="log"></div>
15
+ <div>
16
+ <div onclick="this.innerHTML = 'You Clicked It!'" style="color: red; text-decoration: underline; cursor: pointer;">Can You Click This?</div>
17
+ </div>
15
18
  </body>
16
19
  </html>
@@ -13,5 +13,12 @@
13
13
  <body>
14
14
  <button id='remove-button' onclick="removeText()">Remove text</button>
15
15
  <div id="text">Text</div>
16
+
17
+ <div id='top'>Top Element>
18
+ <div id='middle'>Middle Element>
19
+ <div id='bottom'>Bottom Element</div>
20
+ </div>
21
+ </div>
22
+
16
23
  </body>
17
24
  </html>
@@ -35,7 +35,7 @@ class ImplementationConfig
35
35
 
36
36
  if ENV['SELECTOR_STATS']
37
37
  listener = SelectorListener.new
38
- args.last.merge!(:listener => listener)
38
+ args.last.merge!(listener: listener)
39
39
  at_exit { listener.report }
40
40
  end
41
41
 
@@ -102,13 +102,13 @@ class ImplementationConfig
102
102
  profile = Selenium::WebDriver::Firefox::Profile.new
103
103
  profile.native_events = native_events?
104
104
 
105
- [:firefox, {:profile => profile}]
105
+ [:firefox, {profile: profile}]
106
106
  end
107
107
 
108
108
  def chrome_args
109
109
  opts = {
110
- :args => ["--disable-translate"],
111
- :native_events => native_events?
110
+ args: ["--disable-translate"],
111
+ native_events: native_events?
112
112
  }
113
113
 
114
114
  if url = ENV['WATIR_WEBDRIVER_CHROME_SERVER']
@@ -131,7 +131,7 @@ class ImplementationConfig
131
131
  end
132
132
 
133
133
  def remote_args
134
- [:remote, {:url => ENV["WATIR_WEBDRIVER_REMOTE_URL"] || "http://127.0.0.1:8080"}]
134
+ [:remote, {url: ENV["WATIR_WEBDRIVER_REMOTE_URL"] || "http://127.0.0.1:8080"}]
135
135
  end
136
136
 
137
137
  def add_html_routes
data/spec/input_spec.rb CHANGED
@@ -8,7 +8,7 @@ describe Watir::Input do
8
8
 
9
9
  describe "#type" do
10
10
  it "returns an email type" do
11
- expect(browser.input(:name => "html5_email").type).to eq 'email'
11
+ expect(browser.input(name: "html5_email").type).to eq 'email'
12
12
  end
13
13
  end
14
14
  end
data/spec/spec_helper.rb CHANGED
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  $LOAD_PATH.unshift(File.dirname(__FILE__))
3
2
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
4
3
 
@@ -20,7 +19,7 @@ if ENV['PREFER_CSS']
20
19
  Watir.prefer_css = true
21
20
  end
22
21
 
23
- WEBDRIVER_SELECTORS = [:class, :class_name, :css, :id, :tag_name, :xpath]
22
+ WEBDRIVER_SELECTORS = %i(class class_name css id tag_name xpath)
24
23
 
25
24
  if ENV['TRAVIS']
26
25
  ENV['DISPLAY'] = ":99.0"
@@ -3,11 +3,11 @@ require File.expand_path('watirspec/spec_helper', File.dirname(__FILE__))
3
3
  describe Watir::Browser do
4
4
 
5
5
  before do
6
- browser.goto WatirSpec.url_for("special_chars.html", :needs_server => true)
6
+ browser.goto WatirSpec.url_for("special_chars.html", needs_server: true)
7
7
  end
8
8
 
9
9
  it "finds elements with single quotes" do
10
- expect(browser.div(:text => "single 'quotes'")).to exist
10
+ expect(browser.div(text: "single 'quotes'")).to exist
11
11
  end
12
12
 
13
13
  end
@@ -24,18 +24,18 @@ YARD::Doctest.configure do |doctest|
24
24
  %w[text ok close exists?].each do |name|
25
25
  doctest.before("Watir::Alert##{name}") do
26
26
  browser.goto WatirSpec.url_for('alerts.html')
27
- browser.button(:id => 'alert').click
27
+ browser.button(id: 'alert').click
28
28
  end
29
29
  end
30
30
 
31
31
  doctest.before('Watir::Alert#set') do
32
32
  browser.goto WatirSpec.url_for('alerts.html')
33
- browser.button(:id => 'prompt').click
33
+ browser.button(id: 'prompt').click
34
34
  end
35
35
 
36
36
  doctest.before('Watir::CheckBox#set') do
37
37
  browser.goto WatirSpec.url_for('forms_with_input_elements.html')
38
- checkbox = browser.checkbox(:id => 'new_user_interests_cars')
38
+ checkbox = browser.checkbox(id: 'new_user_interests_cars')
39
39
  end
40
40
 
41
41
  %w[Watir::Browser#execute_script Watir::Element#drag_and_drop].each do |name|
@@ -57,7 +57,7 @@ YARD::Doctest.configure do |doctest|
57
57
  %w[Watir::HasWindow Watir::Window#== Watir::Window#use].each do |name|
58
58
  doctest.before(name) do
59
59
  browser.goto WatirSpec.url_for('window_switching.html')
60
- browser.a(:id => 'open').click
60
+ browser.a(id: 'open').click
61
61
  end
62
62
  end
63
63
 
@@ -7,7 +7,7 @@ class VersionDiffer
7
7
  def update(path)
8
8
  old = File.read(path)
9
9
  File.open(path, "w") do |file|
10
- show_latest(file)
10
+ print_latest(file)
11
11
  file << old
12
12
  end
13
13
  end
@@ -56,4 +56,4 @@ class VersionDiffer
56
56
  str.string
57
57
  end
58
58
 
59
- end
59
+ end
@@ -20,10 +20,10 @@ Gem::Specification.new do |s|
20
20
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
21
21
  s.require_paths = ["lib"]
22
22
 
23
- s.add_dependency "selenium-webdriver", '>= 2.45'
23
+ s.add_dependency "selenium-webdriver", ">= 2.46.2"
24
24
 
25
25
  s.add_development_dependency "rspec", "~> 2.6"
26
- s.add_development_dependency "yard", "~> 0.8.2.1"
26
+ s.add_development_dependency "yard", "> 0.8.2.1"
27
27
  s.add_development_dependency "webidl", ">= 0.1.5"
28
28
  s.add_development_dependency "sinatra", "~> 1.0"
29
29
  s.add_development_dependency "rake", "~> 0.9.2"
@@ -32,5 +32,5 @@ Gem::Specification.new do |s|
32
32
  s.add_development_dependency "activesupport", "~> 3.0" # for pluralization during code generation
33
33
  s.add_development_dependency "pry"
34
34
  s.add_development_dependency "coveralls"
35
- s.add_development_dependency "yard-doctest"
35
+ s.add_development_dependency "yard-doctest", "0.1.4"
36
36
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: watir-webdriver
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jari Bakken
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-03-02 00:00:00.000000000 Z
11
+ date: 2015-06-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: selenium-webdriver
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '2.45'
19
+ version: 2.46.2
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '2.45'
26
+ version: 2.46.2
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rspec
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -42,14 +42,14 @@ dependencies:
42
42
  name: yard
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">"
46
46
  - !ruby/object:Gem::Version
47
47
  version: 0.8.2.1
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">"
53
53
  - !ruby/object:Gem::Version
54
54
  version: 0.8.2.1
55
55
  - !ruby/object:Gem::Dependency
@@ -168,16 +168,16 @@ dependencies:
168
168
  name: yard-doctest
169
169
  requirement: !ruby/object:Gem::Requirement
170
170
  requirements:
171
- - - ">="
171
+ - - '='
172
172
  - !ruby/object:Gem::Version
173
- version: '0'
173
+ version: 0.1.4
174
174
  type: :development
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
- - - ">="
178
+ - - '='
179
179
  - !ruby/object:Gem::Version
180
- version: '0'
180
+ version: 0.1.4
181
181
  description: WebDriver-backed Watir
182
182
  email:
183
183
  - jari.bakken@gmail.com
@@ -219,8 +219,8 @@ files:
219
219
  - lib/watir-webdriver/elements/file_field.rb
220
220
  - lib/watir-webdriver/elements/font.rb
221
221
  - lib/watir-webdriver/elements/form.rb
222
- - lib/watir-webdriver/elements/generated.rb
223
222
  - lib/watir-webdriver/elements/hidden.rb
223
+ - lib/watir-webdriver/elements/html_elements.rb
224
224
  - lib/watir-webdriver/elements/iframe.rb
225
225
  - lib/watir-webdriver/elements/image.rb
226
226
  - lib/watir-webdriver/elements/input.rb
@@ -228,6 +228,7 @@ files:
228
228
  - lib/watir-webdriver/elements/option.rb
229
229
  - lib/watir-webdriver/elements/radio.rb
230
230
  - lib/watir-webdriver/elements/select.rb
231
+ - lib/watir-webdriver/elements/svg_elements.rb
231
232
  - lib/watir-webdriver/elements/table.rb
232
233
  - lib/watir-webdriver/elements/table_cell.rb
233
234
  - lib/watir-webdriver/elements/table_row.rb
@@ -238,13 +239,22 @@ files:
238
239
  - lib/watir-webdriver/extensions/alerts.rb
239
240
  - lib/watir-webdriver/extensions/nokogiri.rb
240
241
  - lib/watir-webdriver/extensions/select_text.rb
242
+ - lib/watir-webdriver/generator.rb
243
+ - lib/watir-webdriver/generator/base.rb
244
+ - lib/watir-webdriver/generator/base/generator.rb
245
+ - lib/watir-webdriver/generator/base/idl_sorter.rb
246
+ - lib/watir-webdriver/generator/base/spec_extractor.rb
247
+ - lib/watir-webdriver/generator/base/util.rb
248
+ - lib/watir-webdriver/generator/base/visitor.rb
249
+ - lib/watir-webdriver/generator/html.rb
250
+ - lib/watir-webdriver/generator/html/generator.rb
251
+ - lib/watir-webdriver/generator/html/spec_extractor.rb
252
+ - lib/watir-webdriver/generator/html/visitor.rb
253
+ - lib/watir-webdriver/generator/svg.rb
254
+ - lib/watir-webdriver/generator/svg/generator.rb
255
+ - lib/watir-webdriver/generator/svg/spec_extractor.rb
256
+ - lib/watir-webdriver/generator/svg/visitor.rb
241
257
  - lib/watir-webdriver/has_window.rb
242
- - lib/watir-webdriver/html.rb
243
- - lib/watir-webdriver/html/generator.rb
244
- - lib/watir-webdriver/html/idl_sorter.rb
245
- - lib/watir-webdriver/html/spec_extractor.rb
246
- - lib/watir-webdriver/html/util.rb
247
- - lib/watir-webdriver/html/visitor.rb
248
258
  - lib/watir-webdriver/locators/button_locator.rb
249
259
  - lib/watir-webdriver/locators/child_cell_locator.rb
250
260
  - lib/watir-webdriver/locators/child_row_locator.rb
@@ -1,3106 +0,0 @@
1
- # Autogenerated from the HTML5 specification. Edits may be lost.
2
- module Watir
3
- class HTMLElement < Element
4
- attribute(String, :title, :title)
5
- attribute(String, :lang, :lang)
6
- attribute("Boolean", :translate?, :translate)
7
- attribute(String, :dir, :dir)
8
- attribute(String, :dataset, :dataset)
9
- attribute("Boolean", :item_scope?, :itemScope)
10
- attribute(String, :item_type, :itemType)
11
- attribute(String, :item_id, :itemId)
12
- attribute(String, :item_ref, :itemRef)
13
- attribute(String, :item_prop, :itemProp)
14
- attribute(String, :properties, :properties)
15
- attribute(String, :item_value, :itemValue)
16
- attribute("Boolean", :hidden?, :hidden)
17
- attribute(Fixnum, :tab_index, :tabIndex)
18
- attribute(String, :access_key, :accessKey)
19
- attribute(String, :access_key_label, :accessKeyLabel)
20
- attribute("Boolean", :draggable?, :draggable)
21
- attribute(String, :dropzone, :dropzone)
22
- attribute(String, :context_menu, :contextMenu)
23
- attribute("Boolean", :spellcheck?, :spellcheck)
24
- attribute(String, :command_type, :commandType)
25
- attribute(String, :command_label, :commandLabel)
26
- attribute(String, :command_icon, :commandIcon)
27
- attribute("Boolean", :command_hidden?, :commandHidden)
28
- attribute("Boolean", :command_disabled?, :commandDisabled)
29
- attribute("Boolean", :command_checked?, :commandChecked)
30
- attribute(String, :onabort, :onabort)
31
- attribute(String, :onautocomplete, :onautocomplete)
32
- attribute(String, :onautocompleteerror, :onautocompleteerror)
33
- attribute(String, :onblur, :onblur)
34
- attribute(String, :oncancel, :oncancel)
35
- attribute(String, :oncanplay, :oncanplay)
36
- attribute(String, :oncanplaythrough, :oncanplaythrough)
37
- attribute(String, :onchange, :onchange)
38
- attribute(String, :onclick, :onclick)
39
- attribute(String, :onclose, :onclose)
40
- attribute(String, :oncontextmenu, :oncontextmenu)
41
- attribute(String, :oncuechange, :oncuechange)
42
- attribute(String, :ondblclick, :ondblclick)
43
- attribute(String, :ondrag, :ondrag)
44
- attribute(String, :ondragend, :ondragend)
45
- attribute(String, :ondragenter, :ondragenter)
46
- attribute(String, :ondragexit, :ondragexit)
47
- attribute(String, :ondragleave, :ondragleave)
48
- attribute(String, :ondragover, :ondragover)
49
- attribute(String, :ondragstart, :ondragstart)
50
- attribute(String, :ondrop, :ondrop)
51
- attribute(String, :ondurationchange, :ondurationchange)
52
- attribute(String, :onemptied, :onemptied)
53
- attribute(String, :onended, :onended)
54
- attribute(String, :onerror, :onerror)
55
- attribute(String, :onfocus, :onfocus)
56
- attribute(String, :oninput, :oninput)
57
- attribute(String, :oninvalid, :oninvalid)
58
- attribute(String, :onkeydown, :onkeydown)
59
- attribute(String, :onkeypress, :onkeypress)
60
- attribute(String, :onkeyup, :onkeyup)
61
- attribute(String, :onload, :onload)
62
- attribute(String, :onloadeddata, :onloadeddata)
63
- attribute(String, :onloadedmetadata, :onloadedmetadata)
64
- attribute(String, :onloadstart, :onloadstart)
65
- attribute(String, :onmousedown, :onmousedown)
66
- attribute(String, :onmouseenter, :onmouseenter)
67
- attribute(String, :onmouseleave, :onmouseleave)
68
- attribute(String, :onmousemove, :onmousemove)
69
- attribute(String, :onmouseout, :onmouseout)
70
- attribute(String, :onmouseover, :onmouseover)
71
- attribute(String, :onmouseup, :onmouseup)
72
- attribute(String, :onmousewheel, :onmousewheel)
73
- attribute(String, :onpause, :onpause)
74
- attribute(String, :onplay, :onplay)
75
- attribute(String, :onplaying, :onplaying)
76
- attribute(String, :onprogress, :onprogress)
77
- attribute(String, :onratechange, :onratechange)
78
- attribute(String, :onreset, :onreset)
79
- attribute(String, :onresize, :onresize)
80
- attribute(String, :onscroll, :onscroll)
81
- attribute(String, :onseeked, :onseeked)
82
- attribute(String, :onseeking, :onseeking)
83
- attribute(String, :onselect, :onselect)
84
- attribute(String, :onshow, :onshow)
85
- attribute(String, :onsort, :onsort)
86
- attribute(String, :onstalled, :onstalled)
87
- attribute(String, :onsubmit, :onsubmit)
88
- attribute(String, :onsuspend, :onsuspend)
89
- attribute(String, :ontimeupdate, :ontimeupdate)
90
- attribute(String, :ontoggle, :ontoggle)
91
- attribute(String, :onvolumechange, :onvolumechange)
92
- attribute(String, :onwaiting, :onwaiting)
93
- attribute(String, :content_editable, :contentEditable)
94
- attribute("Boolean", :content_editable?, :isContentEditable)
95
- end
96
- class HTMLElementCollection < ElementCollection
97
- def element_class
98
- HTMLElement
99
- end
100
- end
101
- class Font < HTMLElement
102
- attribute(String, :color, :color)
103
- attribute(String, :face, :face)
104
- attribute(String, :size, :size)
105
- end
106
- class FontCollection < ElementCollection
107
- def element_class
108
- Font
109
- end
110
- end
111
- class Directory < HTMLElement
112
- attribute("Boolean", :compact?, :compact)
113
- end
114
- class DirectoryCollection < ElementCollection
115
- def element_class
116
- Directory
117
- end
118
- end
119
- class FrameSet < HTMLElement
120
- attribute(String, :cols, :cols)
121
- attribute(String, :onafterprint, :onafterprint)
122
- attribute(String, :onbeforeprint, :onbeforeprint)
123
- attribute(String, :onbeforeunload, :onbeforeunload)
124
- attribute(String, :onhashchange, :onhashchange)
125
- attribute(String, :onlanguagechange, :onlanguagechange)
126
- attribute(String, :onmessage, :onmessage)
127
- attribute(String, :onoffline, :onoffline)
128
- attribute(String, :ononline, :ononline)
129
- attribute(String, :onpagehide, :onpagehide)
130
- attribute(String, :onpageshow, :onpageshow)
131
- attribute(String, :onpopstate, :onpopstate)
132
- attribute(String, :onstorage, :onstorage)
133
- attribute(String, :onunload, :onunload)
134
- end
135
- class FrameSetCollection < ElementCollection
136
- def element_class
137
- FrameSet
138
- end
139
- end
140
- class Marquee < HTMLElement
141
- attribute(String, :behavior, :behavior)
142
- attribute(String, :bg_color, :bgColor)
143
- attribute(String, :direction, :direction)
144
- attribute(String, :height, :height)
145
- attribute(Fixnum, :hspace, :hspace)
146
- attribute(Fixnum, :loop, :loop)
147
- attribute(Fixnum, :scroll_amount, :scrollAmount)
148
- attribute(Fixnum, :scroll_delay, :scrollDelay)
149
- attribute("Boolean", :true_speed?, :trueSpeed)
150
- attribute(Fixnum, :vspace, :vspace)
151
- attribute(String, :width, :width)
152
- attribute(String, :onbounce, :onbounce)
153
- attribute(String, :onfinish, :onfinish)
154
- attribute(String, :onstart, :onstart)
155
- end
156
- class MarqueeCollection < ElementCollection
157
- def element_class
158
- Marquee
159
- end
160
- end
161
- class Applet < HTMLElement
162
- attribute(String, :align, :align)
163
- attribute(String, :alt, :alt)
164
- attribute(String, :archive, :archive)
165
- attribute(String, :code, :code)
166
- attribute(String, :code_base, :codeBase)
167
- attribute(String, :height, :height)
168
- attribute(Fixnum, :hspace, :hspace)
169
- attribute(String, :name, :name)
170
- attribute(String, :object, :object)
171
- attribute(Fixnum, :vspace, :vspace)
172
- attribute(String, :width, :width)
173
- end
174
- class AppletCollection < ElementCollection
175
- def element_class
176
- Applet
177
- end
178
- end
179
- class Canvas < HTMLElement
180
- attribute(Fixnum, :width, :width)
181
- attribute(Fixnum, :height, :height)
182
- end
183
- class CanvasCollection < ElementCollection
184
- def element_class
185
- Canvas
186
- end
187
- end
188
- class Template < HTMLElement
189
- attribute(String, :content, :content)
190
- end
191
- class TemplateCollection < ElementCollection
192
- def element_class
193
- Template
194
- end
195
- end
196
- class Script < HTMLElement
197
- attribute(String, :src, :src)
198
- attribute(String, :type, :type)
199
- attribute(String, :charset, :charset)
200
- attribute("Boolean", :async?, :async)
201
- attribute("Boolean", :defer?, :defer)
202
- attribute(String, :cross_origin, :crossOrigin)
203
- attribute(String, :event, :event)
204
- attribute(String, :for, :htmlFor)
205
- end
206
- class ScriptCollection < ElementCollection
207
- def element_class
208
- Script
209
- end
210
- end
211
- class Dialog < HTMLElement
212
- attribute("Boolean", :open?, :open)
213
- attribute(String, :return_value, :returnValue)
214
- end
215
- class DialogCollection < ElementCollection
216
- def element_class
217
- Dialog
218
- end
219
- end
220
- class MenuItem < HTMLElement
221
- attribute(String, :type, :type)
222
- attribute(String, :label, :label)
223
- attribute(String, :icon, :icon)
224
- attribute("Boolean", :disabled?, :disabled)
225
- attribute("Boolean", :checked?, :checked)
226
- attribute(String, :radiogroup, :radiogroup)
227
- attribute("Boolean", :default?, :default)
228
- attribute(String, :command, :command)
229
- end
230
- class MenuItemCollection < ElementCollection
231
- def element_class
232
- MenuItem
233
- end
234
- end
235
- class Menu < HTMLElement
236
- attribute(String, :type, :type)
237
- attribute(String, :label, :label)
238
- attribute("Boolean", :compact?, :compact)
239
- end
240
- class MenuCollection < ElementCollection
241
- def element_class
242
- Menu
243
- end
244
- end
245
- class Details < HTMLElement
246
- attribute("Boolean", :open?, :open)
247
- end
248
- class DetailsCollection < ElementCollection
249
- def element_class
250
- Details
251
- end
252
- end
253
- class Legend < HTMLElement
254
- attribute(String, :form, :form)
255
- attribute(String, :align, :align)
256
- end
257
- class LegendCollection < ElementCollection
258
- def element_class
259
- Legend
260
- end
261
- end
262
- class FieldSet < HTMLElement
263
- attribute("Boolean", :disabled?, :disabled)
264
- attribute(String, :form, :form)
265
- attribute(String, :name, :name)
266
- attribute(String, :type, :type)
267
- attribute("Boolean", :will_validate?, :willValidate)
268
- attribute(String, :validity, :validity)
269
- attribute(String, :validation_message, :validationMessage)
270
- end
271
- class FieldSetCollection < ElementCollection
272
- def element_class
273
- FieldSet
274
- end
275
- end
276
- class Meter < HTMLElement
277
- attribute(Float, :value, :value)
278
- attribute(Float, :min, :min)
279
- attribute(Float, :max, :max)
280
- attribute(Float, :low, :low)
281
- attribute(Float, :high, :high)
282
- attribute(Float, :optimum, :optimum)
283
- attribute(String, :labels, :labels)
284
- end
285
- class MeterCollection < ElementCollection
286
- def element_class
287
- Meter
288
- end
289
- end
290
- class Progress < HTMLElement
291
- attribute(Float, :value, :value)
292
- attribute(Float, :max, :max)
293
- attribute(Float, :position, :position)
294
- attribute(String, :labels, :labels)
295
- end
296
- class ProgressCollection < ElementCollection
297
- def element_class
298
- Progress
299
- end
300
- end
301
- class Output < HTMLElement
302
- attribute(String, :for, :htmlFor)
303
- attribute(String, :form, :form)
304
- attribute(String, :name, :name)
305
- attribute(String, :type, :type)
306
- attribute(String, :default_value, :defaultValue)
307
- attribute(String, :value, :value)
308
- attribute("Boolean", :will_validate?, :willValidate)
309
- attribute(String, :validity, :validity)
310
- attribute(String, :validation_message, :validationMessage)
311
- attribute(String, :labels, :labels)
312
- end
313
- class OutputCollection < ElementCollection
314
- def element_class
315
- Output
316
- end
317
- end
318
- class Keygen < HTMLElement
319
- attribute("Boolean", :autofocus?, :autofocus)
320
- attribute(String, :challenge, :challenge)
321
- attribute("Boolean", :disabled?, :disabled)
322
- attribute(String, :form, :form)
323
- attribute(String, :keytype, :keytype)
324
- attribute(String, :name, :name)
325
- attribute(String, :type, :type)
326
- attribute("Boolean", :will_validate?, :willValidate)
327
- attribute(String, :validity, :validity)
328
- attribute(String, :validation_message, :validationMessage)
329
- attribute(String, :labels, :labels)
330
- end
331
- class KeygenCollection < ElementCollection
332
- def element_class
333
- Keygen
334
- end
335
- end
336
- class TextArea < HTMLElement
337
- attribute(String, :autocomplete, :autocomplete)
338
- attribute("Boolean", :autofocus?, :autofocus)
339
- attribute(Fixnum, :cols, :cols)
340
- attribute(String, :dir_name, :dirName)
341
- attribute("Boolean", :disabled?, :disabled)
342
- attribute(String, :form, :form)
343
- attribute(String, :input_mode, :inputMode)
344
- attribute(Fixnum, :max_length, :maxLength)
345
- attribute(Fixnum, :min_length, :minLength)
346
- attribute(String, :name, :name)
347
- attribute(String, :placeholder, :placeholder)
348
- attribute("Boolean", :read_only?, :readOnly)
349
- attribute("Boolean", :required?, :required)
350
- attribute(String, :wrap, :wrap)
351
- attribute(String, :type, :type)
352
- attribute(String, :default_value, :defaultValue)
353
- attribute(String, :value, :value)
354
- attribute(Fixnum, :text_length, :textLength)
355
- attribute("Boolean", :will_validate?, :willValidate)
356
- attribute(String, :validity, :validity)
357
- attribute(String, :validation_message, :validationMessage)
358
- attribute(String, :labels, :labels)
359
- attribute(Fixnum, :selection_start, :selectionStart)
360
- attribute(Fixnum, :selection_end, :selectionEnd)
361
- attribute(String, :selection_direction, :selectionDirection)
362
- end
363
- class TextAreaCollection < ElementCollection
364
- def element_class
365
- TextArea
366
- end
367
- end
368
- class Option < HTMLElement
369
- attribute("Boolean", :disabled?, :disabled)
370
- attribute(String, :form, :form)
371
- attribute(String, :label, :label)
372
- attribute("Boolean", :default_selected?, :defaultSelected)
373
- attribute("Boolean", :selected?, :selected)
374
- attribute(String, :value, :value)
375
- attribute(Fixnum, :index, :index)
376
- end
377
- class OptionCollection < ElementCollection
378
- def element_class
379
- Option
380
- end
381
- end
382
- class OptGroup < HTMLElement
383
- attribute("Boolean", :disabled?, :disabled)
384
- attribute(String, :label, :label)
385
- end
386
- class OptGroupCollection < ElementCollection
387
- def element_class
388
- OptGroup
389
- end
390
- end
391
- class DataList < HTMLElement
392
- attribute(String, :options, :options)
393
- end
394
- class DataListCollection < ElementCollection
395
- def element_class
396
- DataList
397
- end
398
- end
399
- class Select < HTMLElement
400
- attribute(String, :autocomplete, :autocomplete)
401
- attribute("Boolean", :autofocus?, :autofocus)
402
- attribute("Boolean", :disabled?, :disabled)
403
- attribute(String, :form, :form)
404
- attribute("Boolean", :multiple?, :multiple)
405
- attribute(String, :name, :name)
406
- attribute("Boolean", :required?, :required)
407
- attribute(Fixnum, :size, :size)
408
- attribute(String, :type, :type)
409
- attribute(String, :options, :options)
410
- attribute(Fixnum, :length, :length)
411
- attribute(String, :selected_options, :selectedOptions)
412
- attribute(Fixnum, :selected_index, :selectedIndex)
413
- attribute(String, :value, :value)
414
- attribute("Boolean", :will_validate?, :willValidate)
415
- attribute(String, :validity, :validity)
416
- attribute(String, :validation_message, :validationMessage)
417
- attribute(String, :labels, :labels)
418
- end
419
- class SelectCollection < ElementCollection
420
- def element_class
421
- Select
422
- end
423
- end
424
- class Button < HTMLElement
425
- attribute("Boolean", :autofocus?, :autofocus)
426
- attribute("Boolean", :disabled?, :disabled)
427
- attribute(String, :form, :form)
428
- attribute(String, :form_action, :formAction)
429
- attribute(String, :form_enctype, :formEnctype)
430
- attribute(String, :form_method, :formMethod)
431
- attribute("Boolean", :form_no_validate?, :formNoValidate)
432
- attribute(String, :form_target, :formTarget)
433
- attribute(String, :name, :name)
434
- attribute(String, :type, :type)
435
- attribute(String, :value, :value)
436
- attribute(String, :menu, :menu)
437
- attribute("Boolean", :will_validate?, :willValidate)
438
- attribute(String, :validity, :validity)
439
- attribute(String, :validation_message, :validationMessage)
440
- attribute(String, :labels, :labels)
441
- end
442
- class ButtonCollection < ElementCollection
443
- def element_class
444
- Button
445
- end
446
- end
447
- class Input < HTMLElement
448
- attribute(String, :accept, :accept)
449
- attribute(String, :alt, :alt)
450
- attribute(String, :autocomplete, :autocomplete)
451
- attribute("Boolean", :autofocus?, :autofocus)
452
- attribute("Boolean", :default_checked?, :defaultChecked)
453
- attribute("Boolean", :checked?, :checked)
454
- attribute(String, :dir_name, :dirName)
455
- attribute("Boolean", :disabled?, :disabled)
456
- attribute(String, :form, :form)
457
- attribute(String, :files, :files)
458
- attribute(String, :form_action, :formAction)
459
- attribute(String, :form_enctype, :formEnctype)
460
- attribute(String, :form_method, :formMethod)
461
- attribute("Boolean", :form_no_validate?, :formNoValidate)
462
- attribute(String, :form_target, :formTarget)
463
- attribute(Fixnum, :height, :height)
464
- attribute("Boolean", :indeterminate?, :indeterminate)
465
- attribute(String, :input_mode, :inputMode)
466
- attribute(String, :list, :list)
467
- attribute(String, :max, :max)
468
- attribute(Fixnum, :max_length, :maxLength)
469
- attribute(String, :min, :min)
470
- attribute(Fixnum, :min_length, :minLength)
471
- attribute("Boolean", :multiple?, :multiple)
472
- attribute(String, :name, :name)
473
- attribute(String, :pattern, :pattern)
474
- attribute(String, :placeholder, :placeholder)
475
- attribute("Boolean", :read_only?, :readOnly)
476
- attribute("Boolean", :required?, :required)
477
- attribute(Fixnum, :size, :size)
478
- attribute(String, :src, :src)
479
- attribute(String, :step, :step)
480
- attribute(String, :type, :type)
481
- attribute(String, :default_value, :defaultValue)
482
- attribute(String, :value, :value)
483
- attribute(String, :value_as_date, :valueAsDate)
484
- attribute(Float, :value_as_number, :valueAsNumber)
485
- attribute(Float, :value_low, :valueLow)
486
- attribute(Float, :value_high, :valueHigh)
487
- attribute(Fixnum, :width, :width)
488
- attribute("Boolean", :will_validate?, :willValidate)
489
- attribute(String, :validity, :validity)
490
- attribute(String, :validation_message, :validationMessage)
491
- attribute(String, :labels, :labels)
492
- attribute(Fixnum, :selection_start, :selectionStart)
493
- attribute(Fixnum, :selection_end, :selectionEnd)
494
- attribute(String, :selection_direction, :selectionDirection)
495
- attribute(String, :align, :align)
496
- attribute(String, :use_map, :useMap)
497
- end
498
- class InputCollection < ElementCollection
499
- def element_class
500
- Input
501
- end
502
- end
503
- class Label < HTMLElement
504
- attribute(String, :form, :form)
505
- attribute(String, :for, :htmlFor)
506
- attribute(String, :control, :control)
507
- end
508
- class LabelCollection < ElementCollection
509
- def element_class
510
- Label
511
- end
512
- end
513
- class Form < HTMLElement
514
- attribute(String, :accept_charset, :acceptCharset)
515
- attribute(String, :action, :action)
516
- attribute(String, :autocomplete, :autocomplete)
517
- attribute(String, :enctype, :enctype)
518
- attribute(String, :encoding, :encoding)
519
- attribute(String, :method, :method)
520
- attribute(String, :name, :name)
521
- attribute("Boolean", :no_validate?, :noValidate)
522
- attribute(String, :target, :target)
523
- attribute(Fixnum, :length, :length)
524
- end
525
- class FormCollection < ElementCollection
526
- def element_class
527
- Form
528
- end
529
- end
530
- class TableCell < HTMLElement
531
- attribute(Fixnum, :col_span, :colSpan)
532
- attribute(Fixnum, :row_span, :rowSpan)
533
- attribute(String, :headers, :headers)
534
- attribute(Fixnum, :cell_index, :cellIndex)
535
- attribute(String, :align, :align)
536
- attribute(String, :axis, :axis)
537
- attribute(String, :height, :height)
538
- attribute(String, :width, :width)
539
- attribute(String, :ch, :ch)
540
- attribute(String, :ch_off, :chOff)
541
- attribute("Boolean", :no_wrap?, :noWrap)
542
- attribute(String, :v_align, :vAlign)
543
- attribute(String, :bg_color, :bgColor)
544
- end
545
- class TableCellCollection < ElementCollection
546
- def element_class
547
- TableCell
548
- end
549
- end
550
- class TableHeaderCell < TableCell
551
- attribute(String, :scope, :scope)
552
- attribute(String, :abbr, :abbr)
553
- attribute(String, :sorted, :sorted)
554
- end
555
- class TableHeaderCellCollection < ElementCollection
556
- def element_class
557
- TableHeaderCell
558
- end
559
- end
560
- class TableDataCell < TableCell
561
- attribute(String, :abbr, :abbr)
562
- end
563
- class TableDataCellCollection < ElementCollection
564
- def element_class
565
- TableDataCell
566
- end
567
- end
568
- class TableRow < HTMLElement
569
- attribute(Fixnum, :row_index, :rowIndex)
570
- attribute(Fixnum, :section_row_index, :sectionRowIndex)
571
- attribute(String, :align, :align)
572
- attribute(String, :ch, :ch)
573
- attribute(String, :ch_off, :chOff)
574
- attribute(String, :v_align, :vAlign)
575
- attribute(String, :bg_color, :bgColor)
576
- end
577
- class TableRowCollection < ElementCollection
578
- def element_class
579
- TableRow
580
- end
581
- end
582
- class TableSection < HTMLElement
583
- attribute(String, :align, :align)
584
- attribute(String, :ch, :ch)
585
- attribute(String, :ch_off, :chOff)
586
- attribute(String, :v_align, :vAlign)
587
- end
588
- class TableSectionCollection < ElementCollection
589
- def element_class
590
- TableSection
591
- end
592
- end
593
- class TableCol < HTMLElement
594
- attribute(String, :align, :align)
595
- attribute(String, :ch, :ch)
596
- attribute(String, :ch_off, :chOff)
597
- attribute(String, :v_align, :vAlign)
598
- attribute(String, :width, :width)
599
- end
600
- class TableColCollection < ElementCollection
601
- def element_class
602
- TableCol
603
- end
604
- end
605
- class TableCaption < HTMLElement
606
- attribute(String, :align, :align)
607
- end
608
- class TableCaptionCollection < ElementCollection
609
- def element_class
610
- TableCaption
611
- end
612
- end
613
- class Table < HTMLElement
614
- attribute(String, :caption, :caption)
615
- attribute(String, :t_head, :tHead)
616
- attribute(String, :t_foot, :tFoot)
617
- attribute(String, :t_bodies, :tBodies)
618
- attribute("Boolean", :sortable?, :sortable)
619
- attribute(String, :align, :align)
620
- attribute(String, :border, :border)
621
- attribute(String, :frame, :frame)
622
- attribute(String, :rules, :rules)
623
- attribute(String, :summary, :summary)
624
- attribute(String, :width, :width)
625
- attribute(String, :bg_color, :bgColor)
626
- attribute(String, :cell_padding, :cellPadding)
627
- attribute(String, :cell_spacing, :cellSpacing)
628
- end
629
- class TableCollection < ElementCollection
630
- def element_class
631
- Table
632
- end
633
- end
634
- class Area < HTMLElement
635
- attribute(String, :alt, :alt)
636
- attribute(String, :coords, :coords)
637
- attribute(String, :shape, :shape)
638
- attribute(String, :target, :target)
639
- attribute(String, :download, :download)
640
- attribute(String, :ping, :ping)
641
- attribute(String, :rel, :rel)
642
- attribute(String, :rel_list, :relList)
643
- attribute(String, :hreflang, :hreflang)
644
- attribute(String, :type, :type)
645
- attribute("Boolean", :no_href?, :noHref)
646
- end
647
- class AreaCollection < ElementCollection
648
- def element_class
649
- Area
650
- end
651
- end
652
- class Map < HTMLElement
653
- attribute(String, :name, :name)
654
- attribute(String, :areas, :areas)
655
- attribute(String, :images, :images)
656
- end
657
- class MapCollection < ElementCollection
658
- def element_class
659
- Map
660
- end
661
- end
662
- class Media < HTMLElement
663
- attribute(String, :error, :error)
664
- attribute(String, :src, :src)
665
- attribute(String, :src_object, :srcObject)
666
- attribute(String, :current_src, :currentSrc)
667
- attribute(String, :cross_origin, :crossOrigin)
668
- attribute(Fixnum, :network_state, :networkState)
669
- attribute(String, :preload, :preload)
670
- attribute(String, :buffered, :buffered)
671
- attribute(Fixnum, :ready_state, :readyState)
672
- attribute("Boolean", :seeking?, :seeking)
673
- attribute(Float, :current_time, :currentTime)
674
- attribute(Float, :duration, :duration)
675
- attribute("Boolean", :paused?, :paused)
676
- attribute(Float, :default_playback_rate, :defaultPlaybackRate)
677
- attribute(Float, :playback_rate, :playbackRate)
678
- attribute(String, :played, :played)
679
- attribute(String, :seekable, :seekable)
680
- attribute("Boolean", :ended?, :ended)
681
- attribute("Boolean", :autoplay?, :autoplay)
682
- attribute("Boolean", :loop?, :loop)
683
- attribute(String, :media_group, :mediaGroup)
684
- attribute(String, :controller, :controller)
685
- attribute("Boolean", :controls?, :controls)
686
- attribute(Float, :volume, :volume)
687
- attribute("Boolean", :muted?, :muted)
688
- attribute("Boolean", :default_muted?, :defaultMuted)
689
- attribute(String, :audio_tracks, :audioTracks)
690
- attribute(String, :video_tracks, :videoTracks)
691
- attribute(String, :text_tracks, :textTracks)
692
- end
693
- class MediaCollection < ElementCollection
694
- def element_class
695
- Media
696
- end
697
- end
698
- class Audio < Media
699
- end
700
- class AudioCollection < ElementCollection
701
- def element_class
702
- Audio
703
- end
704
- end
705
- class Video < Media
706
- attribute(Fixnum, :width, :width)
707
- attribute(Fixnum, :height, :height)
708
- attribute(Fixnum, :video_width, :videoWidth)
709
- attribute(Fixnum, :video_height, :videoHeight)
710
- attribute(String, :poster, :poster)
711
- end
712
- class VideoCollection < ElementCollection
713
- def element_class
714
- Video
715
- end
716
- end
717
- class Track < HTMLElement
718
- attribute(String, :kind, :kind)
719
- attribute(String, :src, :src)
720
- attribute(String, :srclang, :srclang)
721
- attribute(String, :label, :label)
722
- attribute("Boolean", :default?, :default)
723
- attribute(Fixnum, :ready_state, :readyState)
724
- attribute(String, :track, :track)
725
- end
726
- class TrackCollection < ElementCollection
727
- def element_class
728
- Track
729
- end
730
- end
731
- class Param < HTMLElement
732
- attribute(String, :name, :name)
733
- attribute(String, :value, :value)
734
- attribute(String, :type, :type)
735
- attribute(String, :value_type, :valueType)
736
- end
737
- class ParamCollection < ElementCollection
738
- def element_class
739
- Param
740
- end
741
- end
742
- class Object < HTMLElement
743
- attribute(String, :data, :data)
744
- attribute(String, :type, :type)
745
- attribute("Boolean", :type_must_match?, :typeMustMatch)
746
- attribute(String, :name, :name)
747
- attribute(String, :use_map, :useMap)
748
- attribute(String, :form, :form)
749
- attribute(String, :width, :width)
750
- attribute(String, :height, :height)
751
- attribute(String, :content_document, :contentDocument)
752
- attribute(String, :content_window, :contentWindow)
753
- attribute("Boolean", :will_validate?, :willValidate)
754
- attribute(String, :validity, :validity)
755
- attribute(String, :validation_message, :validationMessage)
756
- attribute(String, :align, :align)
757
- attribute(String, :archive, :archive)
758
- attribute(String, :code, :code)
759
- attribute("Boolean", :declare?, :declare)
760
- attribute(Fixnum, :hspace, :hspace)
761
- attribute(String, :standby, :standby)
762
- attribute(Fixnum, :vspace, :vspace)
763
- attribute(String, :code_base, :codeBase)
764
- attribute(String, :code_type, :codeType)
765
- attribute(String, :border, :border)
766
- end
767
- class ObjectCollection < ElementCollection
768
- def element_class
769
- Object
770
- end
771
- end
772
- class Embed < HTMLElement
773
- attribute(String, :src, :src)
774
- attribute(String, :type, :type)
775
- attribute(String, :width, :width)
776
- attribute(String, :height, :height)
777
- attribute(String, :align, :align)
778
- attribute(String, :name, :name)
779
- end
780
- class EmbedCollection < ElementCollection
781
- def element_class
782
- Embed
783
- end
784
- end
785
- class IFrame < HTMLElement
786
- attribute(String, :src, :src)
787
- attribute(String, :srcdoc, :srcdoc)
788
- attribute(String, :name, :name)
789
- attribute(String, :sandbox, :sandbox)
790
- attribute("Boolean", :seamless?, :seamless)
791
- attribute("Boolean", :allow_fullscreen?, :allowFullscreen)
792
- attribute(String, :width, :width)
793
- attribute(String, :height, :height)
794
- attribute(String, :content_document, :contentDocument)
795
- attribute(String, :content_window, :contentWindow)
796
- attribute(String, :align, :align)
797
- attribute(String, :scrolling, :scrolling)
798
- attribute(String, :frame_border, :frameBorder)
799
- attribute(String, :long_desc, :longDesc)
800
- attribute(String, :margin_height, :marginHeight)
801
- attribute(String, :margin_width, :marginWidth)
802
- end
803
- class IFrameCollection < ElementCollection
804
- def element_class
805
- IFrame
806
- end
807
- end
808
- class Image < HTMLElement
809
- attribute(String, :alt, :alt)
810
- attribute(String, :src, :src)
811
- attribute(String, :srcset, :srcset)
812
- attribute(String, :sizes, :sizes)
813
- attribute(String, :cross_origin, :crossOrigin)
814
- attribute(String, :use_map, :useMap)
815
- attribute("Boolean", :map?, :isMap)
816
- attribute(Fixnum, :width, :width)
817
- attribute(Fixnum, :height, :height)
818
- attribute(Fixnum, :natural_width, :naturalWidth)
819
- attribute(Fixnum, :natural_height, :naturalHeight)
820
- attribute("Boolean", :complete?, :complete)
821
- attribute(String, :current_src, :currentSrc)
822
- attribute(String, :name, :name)
823
- attribute(String, :lowsrc, :lowsrc)
824
- attribute(String, :align, :align)
825
- attribute(Fixnum, :hspace, :hspace)
826
- attribute(Fixnum, :vspace, :vspace)
827
- attribute(String, :long_desc, :longDesc)
828
- attribute(String, :border, :border)
829
- end
830
- class ImageCollection < ElementCollection
831
- def element_class
832
- Image
833
- end
834
- end
835
- class Source < HTMLElement
836
- attribute(String, :srcset, :srcset)
837
- attribute(String, :sizes, :sizes)
838
- attribute(String, :media, :media)
839
- attribute(String, :src, :src)
840
- attribute(String, :type, :type)
841
- end
842
- class SourceCollection < ElementCollection
843
- def element_class
844
- Source
845
- end
846
- end
847
- class Picture < HTMLElement
848
- end
849
- class PictureCollection < ElementCollection
850
- def element_class
851
- Picture
852
- end
853
- end
854
- class Mod < HTMLElement
855
- attribute(String, :cite, :cite)
856
- attribute(String, :date_time, :dateTime)
857
- end
858
- class ModCollection < ElementCollection
859
- def element_class
860
- Mod
861
- end
862
- end
863
- class BR < HTMLElement
864
- attribute(String, :clear, :clear)
865
- end
866
- class BRCollection < ElementCollection
867
- def element_class
868
- BR
869
- end
870
- end
871
- class Span < HTMLElement
872
- end
873
- class SpanCollection < ElementCollection
874
- def element_class
875
- Span
876
- end
877
- end
878
- class Time < HTMLElement
879
- attribute(String, :date_time, :dateTime)
880
- end
881
- class TimeCollection < ElementCollection
882
- def element_class
883
- Time
884
- end
885
- end
886
- class Data < HTMLElement
887
- attribute(String, :value, :value)
888
- end
889
- class DataCollection < ElementCollection
890
- def element_class
891
- Data
892
- end
893
- end
894
- class Anchor < HTMLElement
895
- attribute(String, :target, :target)
896
- attribute(String, :download, :download)
897
- attribute(String, :ping, :ping)
898
- attribute(String, :rel, :rel)
899
- attribute(String, :rel_list, :relList)
900
- attribute(String, :hreflang, :hreflang)
901
- attribute(String, :type, :type)
902
- attribute(String, :coords, :coords)
903
- attribute(String, :charset, :charset)
904
- attribute(String, :name, :name)
905
- attribute(String, :rev, :rev)
906
- attribute(String, :shape, :shape)
907
- end
908
- class AnchorCollection < ElementCollection
909
- def element_class
910
- Anchor
911
- end
912
- end
913
- class Div < HTMLElement
914
- attribute(String, :align, :align)
915
- end
916
- class DivCollection < ElementCollection
917
- def element_class
918
- Div
919
- end
920
- end
921
- class DList < HTMLElement
922
- attribute("Boolean", :compact?, :compact)
923
- end
924
- class DListCollection < ElementCollection
925
- def element_class
926
- DList
927
- end
928
- end
929
- class LI < HTMLElement
930
- attribute(Fixnum, :value, :value)
931
- attribute(String, :type, :type)
932
- end
933
- class LICollection < ElementCollection
934
- def element_class
935
- LI
936
- end
937
- end
938
- class UList < HTMLElement
939
- attribute("Boolean", :compact?, :compact)
940
- attribute(String, :type, :type)
941
- end
942
- class UListCollection < ElementCollection
943
- def element_class
944
- UList
945
- end
946
- end
947
- class OList < HTMLElement
948
- attribute("Boolean", :reversed?, :reversed)
949
- attribute(Fixnum, :start, :start)
950
- attribute(String, :type, :type)
951
- attribute("Boolean", :compact?, :compact)
952
- end
953
- class OListCollection < ElementCollection
954
- def element_class
955
- OList
956
- end
957
- end
958
- class Quote < HTMLElement
959
- attribute(String, :cite, :cite)
960
- end
961
- class QuoteCollection < ElementCollection
962
- def element_class
963
- Quote
964
- end
965
- end
966
- class Pre < HTMLElement
967
- attribute(Fixnum, :width, :width)
968
- end
969
- class PreCollection < ElementCollection
970
- def element_class
971
- Pre
972
- end
973
- end
974
- class HR < HTMLElement
975
- attribute(String, :align, :align)
976
- attribute(String, :color, :color)
977
- attribute("Boolean", :no_shade?, :noShade)
978
- attribute(String, :size, :size)
979
- attribute(String, :width, :width)
980
- end
981
- class HRCollection < ElementCollection
982
- def element_class
983
- HR
984
- end
985
- end
986
- class Paragraph < HTMLElement
987
- attribute(String, :align, :align)
988
- end
989
- class ParagraphCollection < ElementCollection
990
- def element_class
991
- Paragraph
992
- end
993
- end
994
- class Heading < HTMLElement
995
- attribute(String, :align, :align)
996
- end
997
- class HeadingCollection < ElementCollection
998
- def element_class
999
- Heading
1000
- end
1001
- end
1002
- class Body < HTMLElement
1003
- attribute(String, :link, :link)
1004
- attribute(String, :v_link, :vLink)
1005
- attribute(String, :a_link, :aLink)
1006
- attribute(String, :bg_color, :bgColor)
1007
- attribute(String, :background, :background)
1008
- attribute(String, :onafterprint, :onafterprint)
1009
- attribute(String, :onbeforeprint, :onbeforeprint)
1010
- attribute(String, :onbeforeunload, :onbeforeunload)
1011
- attribute(String, :onhashchange, :onhashchange)
1012
- attribute(String, :onlanguagechange, :onlanguagechange)
1013
- attribute(String, :onmessage, :onmessage)
1014
- attribute(String, :onoffline, :onoffline)
1015
- attribute(String, :ononline, :ononline)
1016
- attribute(String, :onpagehide, :onpagehide)
1017
- attribute(String, :onpageshow, :onpageshow)
1018
- attribute(String, :onpopstate, :onpopstate)
1019
- attribute(String, :onstorage, :onstorage)
1020
- attribute(String, :onunload, :onunload)
1021
- end
1022
- class BodyCollection < ElementCollection
1023
- def element_class
1024
- Body
1025
- end
1026
- end
1027
- class Style < HTMLElement
1028
- attribute(String, :media, :media)
1029
- attribute(String, :type, :type)
1030
- attribute("Boolean", :scoped?, :scoped)
1031
- end
1032
- class StyleCollection < ElementCollection
1033
- def element_class
1034
- Style
1035
- end
1036
- end
1037
- class Meta < HTMLElement
1038
- attribute(String, :name, :name)
1039
- attribute(String, :http_equiv, :httpEquiv)
1040
- attribute(String, :content, :content)
1041
- attribute(String, :scheme, :scheme)
1042
- end
1043
- class MetaCollection < ElementCollection
1044
- def element_class
1045
- Meta
1046
- end
1047
- end
1048
- class Base < HTMLElement
1049
- attribute(String, :href, :href)
1050
- attribute(String, :target, :target)
1051
- end
1052
- class BaseCollection < ElementCollection
1053
- def element_class
1054
- Base
1055
- end
1056
- end
1057
- class Title < HTMLElement
1058
- end
1059
- class TitleCollection < ElementCollection
1060
- def element_class
1061
- Title
1062
- end
1063
- end
1064
- class Head < HTMLElement
1065
- end
1066
- class HeadCollection < ElementCollection
1067
- def element_class
1068
- Head
1069
- end
1070
- end
1071
- class Html < HTMLElement
1072
- attribute(String, :version, :version)
1073
- end
1074
- class HtmlCollection < ElementCollection
1075
- def element_class
1076
- Html
1077
- end
1078
- end
1079
- class Unknown < HTMLElement
1080
- end
1081
- class UnknownCollection < ElementCollection
1082
- def element_class
1083
- Unknown
1084
- end
1085
- end
1086
-
1087
-
1088
- module Container
1089
-
1090
- #
1091
- # @return [Anchor]
1092
- #
1093
-
1094
- def a(*args)
1095
- Anchor.new(self, extract_selector(args).merge(:tag_name => "a"))
1096
- end
1097
-
1098
- #
1099
- # @return [AnchorCollection]
1100
- #
1101
-
1102
- def as(*args)
1103
- AnchorCollection.new(self, extract_selector(args).merge(:tag_name => "a"))
1104
- end
1105
-
1106
- Watir.tag_to_class[:a] = Anchor
1107
-
1108
- #
1109
- # @return [HTMLElement]
1110
- #
1111
-
1112
- def abbr(*args)
1113
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "abbr"))
1114
- end
1115
-
1116
- #
1117
- # @return [HTMLElementCollection]
1118
- #
1119
-
1120
- def abbrs(*args)
1121
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "abbr"))
1122
- end
1123
-
1124
- Watir.tag_to_class[:abbr] = HTMLElement
1125
-
1126
- #
1127
- # @return [HTMLElement]
1128
- #
1129
-
1130
- def address(*args)
1131
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "address"))
1132
- end
1133
-
1134
- #
1135
- # @return [HTMLElementCollection]
1136
- #
1137
-
1138
- def addresses(*args)
1139
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "address"))
1140
- end
1141
-
1142
- Watir.tag_to_class[:address] = HTMLElement
1143
-
1144
- #
1145
- # @return [Area]
1146
- #
1147
-
1148
- def area(*args)
1149
- Area.new(self, extract_selector(args).merge(:tag_name => "area"))
1150
- end
1151
-
1152
- #
1153
- # @return [AreaCollection]
1154
- #
1155
-
1156
- def areas(*args)
1157
- AreaCollection.new(self, extract_selector(args).merge(:tag_name => "area"))
1158
- end
1159
-
1160
- Watir.tag_to_class[:area] = Area
1161
-
1162
- #
1163
- # @return [HTMLElement]
1164
- #
1165
-
1166
- def article(*args)
1167
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "article"))
1168
- end
1169
-
1170
- #
1171
- # @return [HTMLElementCollection]
1172
- #
1173
-
1174
- def articles(*args)
1175
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "article"))
1176
- end
1177
-
1178
- Watir.tag_to_class[:article] = HTMLElement
1179
-
1180
- #
1181
- # @return [HTMLElement]
1182
- #
1183
-
1184
- def aside(*args)
1185
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "aside"))
1186
- end
1187
-
1188
- #
1189
- # @return [HTMLElementCollection]
1190
- #
1191
-
1192
- def asides(*args)
1193
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "aside"))
1194
- end
1195
-
1196
- Watir.tag_to_class[:aside] = HTMLElement
1197
-
1198
- #
1199
- # @return [Audio]
1200
- #
1201
-
1202
- def audio(*args)
1203
- Audio.new(self, extract_selector(args).merge(:tag_name => "audio"))
1204
- end
1205
-
1206
- #
1207
- # @return [AudioCollection]
1208
- #
1209
-
1210
- def audios(*args)
1211
- AudioCollection.new(self, extract_selector(args).merge(:tag_name => "audio"))
1212
- end
1213
-
1214
- Watir.tag_to_class[:audio] = Audio
1215
-
1216
- #
1217
- # @return [HTMLElement]
1218
- #
1219
-
1220
- def b(*args)
1221
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "b"))
1222
- end
1223
-
1224
- #
1225
- # @return [HTMLElementCollection]
1226
- #
1227
-
1228
- def bs(*args)
1229
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "b"))
1230
- end
1231
-
1232
- Watir.tag_to_class[:b] = HTMLElement
1233
-
1234
- #
1235
- # @return [Base]
1236
- #
1237
-
1238
- def base(*args)
1239
- Base.new(self, extract_selector(args).merge(:tag_name => "base"))
1240
- end
1241
-
1242
- #
1243
- # @return [BaseCollection]
1244
- #
1245
-
1246
- def bases(*args)
1247
- BaseCollection.new(self, extract_selector(args).merge(:tag_name => "base"))
1248
- end
1249
-
1250
- Watir.tag_to_class[:base] = Base
1251
-
1252
- #
1253
- # @return [HTMLElement]
1254
- #
1255
-
1256
- def bdi(*args)
1257
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "bdi"))
1258
- end
1259
-
1260
- #
1261
- # @return [HTMLElementCollection]
1262
- #
1263
-
1264
- def bdis(*args)
1265
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "bdi"))
1266
- end
1267
-
1268
- Watir.tag_to_class[:bdi] = HTMLElement
1269
-
1270
- #
1271
- # @return [HTMLElement]
1272
- #
1273
-
1274
- def bdo(*args)
1275
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "bdo"))
1276
- end
1277
-
1278
- #
1279
- # @return [HTMLElementCollection]
1280
- #
1281
-
1282
- def bdos(*args)
1283
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "bdo"))
1284
- end
1285
-
1286
- Watir.tag_to_class[:bdo] = HTMLElement
1287
-
1288
- #
1289
- # @return [Quote]
1290
- #
1291
-
1292
- def blockquote(*args)
1293
- Quote.new(self, extract_selector(args).merge(:tag_name => "blockquote"))
1294
- end
1295
-
1296
- #
1297
- # @return [QuoteCollection]
1298
- #
1299
-
1300
- def blockquotes(*args)
1301
- QuoteCollection.new(self, extract_selector(args).merge(:tag_name => "blockquote"))
1302
- end
1303
-
1304
- Watir.tag_to_class[:blockquote] = Quote
1305
-
1306
- #
1307
- # @return [Body]
1308
- #
1309
-
1310
- def body(*args)
1311
- Body.new(self, extract_selector(args).merge(:tag_name => "body"))
1312
- end
1313
-
1314
- #
1315
- # @return [BodyCollection]
1316
- #
1317
-
1318
- def bodys(*args)
1319
- BodyCollection.new(self, extract_selector(args).merge(:tag_name => "body"))
1320
- end
1321
-
1322
- Watir.tag_to_class[:body] = Body
1323
-
1324
- #
1325
- # @return [BR]
1326
- #
1327
-
1328
- def br(*args)
1329
- BR.new(self, extract_selector(args).merge(:tag_name => "br"))
1330
- end
1331
-
1332
- #
1333
- # @return [BRCollection]
1334
- #
1335
-
1336
- def brs(*args)
1337
- BRCollection.new(self, extract_selector(args).merge(:tag_name => "br"))
1338
- end
1339
-
1340
- Watir.tag_to_class[:br] = BR
1341
-
1342
- #
1343
- # @return [Button]
1344
- #
1345
-
1346
- def button(*args)
1347
- Button.new(self, extract_selector(args).merge(:tag_name => "button"))
1348
- end
1349
-
1350
- #
1351
- # @return [ButtonCollection]
1352
- #
1353
-
1354
- def buttons(*args)
1355
- ButtonCollection.new(self, extract_selector(args).merge(:tag_name => "button"))
1356
- end
1357
-
1358
- Watir.tag_to_class[:button] = Button
1359
-
1360
- #
1361
- # @return [Canvas]
1362
- #
1363
-
1364
- def canvas(*args)
1365
- Canvas.new(self, extract_selector(args).merge(:tag_name => "canvas"))
1366
- end
1367
-
1368
- #
1369
- # @return [CanvasCollection]
1370
- #
1371
-
1372
- def canvases(*args)
1373
- CanvasCollection.new(self, extract_selector(args).merge(:tag_name => "canvas"))
1374
- end
1375
-
1376
- Watir.tag_to_class[:canvas] = Canvas
1377
-
1378
- #
1379
- # @return [TableCaption]
1380
- #
1381
-
1382
- def caption(*args)
1383
- TableCaption.new(self, extract_selector(args).merge(:tag_name => "caption"))
1384
- end
1385
-
1386
- #
1387
- # @return [TableCaptionCollection]
1388
- #
1389
-
1390
- def captions(*args)
1391
- TableCaptionCollection.new(self, extract_selector(args).merge(:tag_name => "caption"))
1392
- end
1393
-
1394
- Watir.tag_to_class[:caption] = TableCaption
1395
-
1396
- #
1397
- # @return [HTMLElement]
1398
- #
1399
-
1400
- def cite(*args)
1401
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "cite"))
1402
- end
1403
-
1404
- #
1405
- # @return [HTMLElementCollection]
1406
- #
1407
-
1408
- def cites(*args)
1409
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "cite"))
1410
- end
1411
-
1412
- Watir.tag_to_class[:cite] = HTMLElement
1413
-
1414
- #
1415
- # @return [HTMLElement]
1416
- #
1417
-
1418
- def code(*args)
1419
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "code"))
1420
- end
1421
-
1422
- #
1423
- # @return [HTMLElementCollection]
1424
- #
1425
-
1426
- def codes(*args)
1427
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "code"))
1428
- end
1429
-
1430
- Watir.tag_to_class[:code] = HTMLElement
1431
-
1432
- #
1433
- # @return [TableCol]
1434
- #
1435
-
1436
- def col(*args)
1437
- TableCol.new(self, extract_selector(args).merge(:tag_name => "col"))
1438
- end
1439
-
1440
- #
1441
- # @return [TableColCollection]
1442
- #
1443
-
1444
- def cols(*args)
1445
- TableColCollection.new(self, extract_selector(args).merge(:tag_name => "col"))
1446
- end
1447
-
1448
- Watir.tag_to_class[:col] = TableCol
1449
-
1450
- #
1451
- # @return [TableCol]
1452
- #
1453
-
1454
- def colgroup(*args)
1455
- TableCol.new(self, extract_selector(args).merge(:tag_name => "colgroup"))
1456
- end
1457
-
1458
- #
1459
- # @return [TableColCollection]
1460
- #
1461
-
1462
- def colgroups(*args)
1463
- TableColCollection.new(self, extract_selector(args).merge(:tag_name => "colgroup"))
1464
- end
1465
-
1466
- Watir.tag_to_class[:colgroup] = TableCol
1467
-
1468
- #
1469
- # @return [Data]
1470
- #
1471
-
1472
- def data(*args)
1473
- Data.new(self, extract_selector(args).merge(:tag_name => "data"))
1474
- end
1475
-
1476
- #
1477
- # @return [DataCollection]
1478
- #
1479
-
1480
- def datas(*args)
1481
- DataCollection.new(self, extract_selector(args).merge(:tag_name => "data"))
1482
- end
1483
-
1484
- Watir.tag_to_class[:data] = Data
1485
-
1486
- #
1487
- # @return [DataList]
1488
- #
1489
-
1490
- def datalist(*args)
1491
- DataList.new(self, extract_selector(args).merge(:tag_name => "datalist"))
1492
- end
1493
-
1494
- #
1495
- # @return [DataListCollection]
1496
- #
1497
-
1498
- def datalists(*args)
1499
- DataListCollection.new(self, extract_selector(args).merge(:tag_name => "datalist"))
1500
- end
1501
-
1502
- Watir.tag_to_class[:datalist] = DataList
1503
-
1504
- #
1505
- # @return [HTMLElement]
1506
- #
1507
-
1508
- def dd(*args)
1509
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "dd"))
1510
- end
1511
-
1512
- #
1513
- # @return [HTMLElementCollection]
1514
- #
1515
-
1516
- def dds(*args)
1517
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "dd"))
1518
- end
1519
-
1520
- Watir.tag_to_class[:dd] = HTMLElement
1521
-
1522
- #
1523
- # @return [Mod]
1524
- #
1525
-
1526
- def del(*args)
1527
- Mod.new(self, extract_selector(args).merge(:tag_name => "del"))
1528
- end
1529
-
1530
- #
1531
- # @return [ModCollection]
1532
- #
1533
-
1534
- def dels(*args)
1535
- ModCollection.new(self, extract_selector(args).merge(:tag_name => "del"))
1536
- end
1537
-
1538
- Watir.tag_to_class[:del] = Mod
1539
-
1540
- #
1541
- # @return [Details]
1542
- #
1543
-
1544
- def details(*args)
1545
- Details.new(self, extract_selector(args).merge(:tag_name => "details"))
1546
- end
1547
-
1548
- #
1549
- # @return [DetailsCollection]
1550
- #
1551
-
1552
- def detailses(*args)
1553
- DetailsCollection.new(self, extract_selector(args).merge(:tag_name => "details"))
1554
- end
1555
-
1556
- Watir.tag_to_class[:details] = Details
1557
-
1558
- #
1559
- # @return [HTMLElement]
1560
- #
1561
-
1562
- def dfn(*args)
1563
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "dfn"))
1564
- end
1565
-
1566
- #
1567
- # @return [HTMLElementCollection]
1568
- #
1569
-
1570
- def dfns(*args)
1571
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "dfn"))
1572
- end
1573
-
1574
- Watir.tag_to_class[:dfn] = HTMLElement
1575
-
1576
- #
1577
- # @return [Dialog]
1578
- #
1579
-
1580
- def dialog(*args)
1581
- Dialog.new(self, extract_selector(args).merge(:tag_name => "dialog"))
1582
- end
1583
-
1584
- #
1585
- # @return [DialogCollection]
1586
- #
1587
-
1588
- def dialogs(*args)
1589
- DialogCollection.new(self, extract_selector(args).merge(:tag_name => "dialog"))
1590
- end
1591
-
1592
- Watir.tag_to_class[:dialog] = Dialog
1593
-
1594
- #
1595
- # @return [Div]
1596
- #
1597
-
1598
- def div(*args)
1599
- Div.new(self, extract_selector(args).merge(:tag_name => "div"))
1600
- end
1601
-
1602
- #
1603
- # @return [DivCollection]
1604
- #
1605
-
1606
- def divs(*args)
1607
- DivCollection.new(self, extract_selector(args).merge(:tag_name => "div"))
1608
- end
1609
-
1610
- Watir.tag_to_class[:div] = Div
1611
-
1612
- #
1613
- # @return [DList]
1614
- #
1615
-
1616
- def dl(*args)
1617
- DList.new(self, extract_selector(args).merge(:tag_name => "dl"))
1618
- end
1619
-
1620
- #
1621
- # @return [DListCollection]
1622
- #
1623
-
1624
- def dls(*args)
1625
- DListCollection.new(self, extract_selector(args).merge(:tag_name => "dl"))
1626
- end
1627
-
1628
- Watir.tag_to_class[:dl] = DList
1629
-
1630
- #
1631
- # @return [HTMLElement]
1632
- #
1633
-
1634
- def dt(*args)
1635
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "dt"))
1636
- end
1637
-
1638
- #
1639
- # @return [HTMLElementCollection]
1640
- #
1641
-
1642
- def dts(*args)
1643
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "dt"))
1644
- end
1645
-
1646
- Watir.tag_to_class[:dt] = HTMLElement
1647
-
1648
- #
1649
- # @return [HTMLElement]
1650
- #
1651
-
1652
- def em(*args)
1653
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "em"))
1654
- end
1655
-
1656
- #
1657
- # @return [HTMLElementCollection]
1658
- #
1659
-
1660
- def ems(*args)
1661
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "em"))
1662
- end
1663
-
1664
- Watir.tag_to_class[:em] = HTMLElement
1665
-
1666
- #
1667
- # @return [Embed]
1668
- #
1669
-
1670
- def embed(*args)
1671
- Embed.new(self, extract_selector(args).merge(:tag_name => "embed"))
1672
- end
1673
-
1674
- #
1675
- # @return [EmbedCollection]
1676
- #
1677
-
1678
- def embeds(*args)
1679
- EmbedCollection.new(self, extract_selector(args).merge(:tag_name => "embed"))
1680
- end
1681
-
1682
- Watir.tag_to_class[:embed] = Embed
1683
-
1684
- #
1685
- # @return [FieldSet]
1686
- #
1687
-
1688
- def fieldset(*args)
1689
- FieldSet.new(self, extract_selector(args).merge(:tag_name => "fieldset"))
1690
- end
1691
-
1692
- #
1693
- # @return [FieldSetCollection]
1694
- #
1695
-
1696
- def fieldsets(*args)
1697
- FieldSetCollection.new(self, extract_selector(args).merge(:tag_name => "fieldset"))
1698
- end
1699
-
1700
- Watir.tag_to_class[:fieldset] = FieldSet
1701
-
1702
- #
1703
- # @return [HTMLElement]
1704
- #
1705
-
1706
- def figcaption(*args)
1707
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "figcaption"))
1708
- end
1709
-
1710
- #
1711
- # @return [HTMLElementCollection]
1712
- #
1713
-
1714
- def figcaptions(*args)
1715
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "figcaption"))
1716
- end
1717
-
1718
- Watir.tag_to_class[:figcaption] = HTMLElement
1719
-
1720
- #
1721
- # @return [HTMLElement]
1722
- #
1723
-
1724
- def figure(*args)
1725
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "figure"))
1726
- end
1727
-
1728
- #
1729
- # @return [HTMLElementCollection]
1730
- #
1731
-
1732
- def figures(*args)
1733
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "figure"))
1734
- end
1735
-
1736
- Watir.tag_to_class[:figure] = HTMLElement
1737
-
1738
- #
1739
- # @return [HTMLElement]
1740
- #
1741
-
1742
- def footer(*args)
1743
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "footer"))
1744
- end
1745
-
1746
- #
1747
- # @return [HTMLElementCollection]
1748
- #
1749
-
1750
- def footers(*args)
1751
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "footer"))
1752
- end
1753
-
1754
- Watir.tag_to_class[:footer] = HTMLElement
1755
-
1756
- #
1757
- # @return [Form]
1758
- #
1759
-
1760
- def form(*args)
1761
- Form.new(self, extract_selector(args).merge(:tag_name => "form"))
1762
- end
1763
-
1764
- #
1765
- # @return [FormCollection]
1766
- #
1767
-
1768
- def forms(*args)
1769
- FormCollection.new(self, extract_selector(args).merge(:tag_name => "form"))
1770
- end
1771
-
1772
- Watir.tag_to_class[:form] = Form
1773
-
1774
- #
1775
- # @return [FrameSet]
1776
- #
1777
-
1778
- def frameset(*args)
1779
- FrameSet.new(self, extract_selector(args).merge(:tag_name => "frameset"))
1780
- end
1781
-
1782
- #
1783
- # @return [FrameSetCollection]
1784
- #
1785
-
1786
- def framesets(*args)
1787
- FrameSetCollection.new(self, extract_selector(args).merge(:tag_name => "frameset"))
1788
- end
1789
-
1790
- Watir.tag_to_class[:frameset] = FrameSet
1791
-
1792
- #
1793
- # @return [Heading]
1794
- #
1795
-
1796
- def h1(*args)
1797
- Heading.new(self, extract_selector(args).merge(:tag_name => "h1"))
1798
- end
1799
-
1800
- #
1801
- # @return [HeadingCollection]
1802
- #
1803
-
1804
- def h1s(*args)
1805
- HeadingCollection.new(self, extract_selector(args).merge(:tag_name => "h1"))
1806
- end
1807
-
1808
- Watir.tag_to_class[:h1] = Heading
1809
-
1810
- #
1811
- # @return [Heading]
1812
- #
1813
-
1814
- def h2(*args)
1815
- Heading.new(self, extract_selector(args).merge(:tag_name => "h2"))
1816
- end
1817
-
1818
- #
1819
- # @return [HeadingCollection]
1820
- #
1821
-
1822
- def h2s(*args)
1823
- HeadingCollection.new(self, extract_selector(args).merge(:tag_name => "h2"))
1824
- end
1825
-
1826
- Watir.tag_to_class[:h2] = Heading
1827
-
1828
- #
1829
- # @return [Heading]
1830
- #
1831
-
1832
- def h3(*args)
1833
- Heading.new(self, extract_selector(args).merge(:tag_name => "h3"))
1834
- end
1835
-
1836
- #
1837
- # @return [HeadingCollection]
1838
- #
1839
-
1840
- def h3s(*args)
1841
- HeadingCollection.new(self, extract_selector(args).merge(:tag_name => "h3"))
1842
- end
1843
-
1844
- Watir.tag_to_class[:h3] = Heading
1845
-
1846
- #
1847
- # @return [Heading]
1848
- #
1849
-
1850
- def h4(*args)
1851
- Heading.new(self, extract_selector(args).merge(:tag_name => "h4"))
1852
- end
1853
-
1854
- #
1855
- # @return [HeadingCollection]
1856
- #
1857
-
1858
- def h4s(*args)
1859
- HeadingCollection.new(self, extract_selector(args).merge(:tag_name => "h4"))
1860
- end
1861
-
1862
- Watir.tag_to_class[:h4] = Heading
1863
-
1864
- #
1865
- # @return [Heading]
1866
- #
1867
-
1868
- def h5(*args)
1869
- Heading.new(self, extract_selector(args).merge(:tag_name => "h5"))
1870
- end
1871
-
1872
- #
1873
- # @return [HeadingCollection]
1874
- #
1875
-
1876
- def h5s(*args)
1877
- HeadingCollection.new(self, extract_selector(args).merge(:tag_name => "h5"))
1878
- end
1879
-
1880
- Watir.tag_to_class[:h5] = Heading
1881
-
1882
- #
1883
- # @return [Heading]
1884
- #
1885
-
1886
- def h6(*args)
1887
- Heading.new(self, extract_selector(args).merge(:tag_name => "h6"))
1888
- end
1889
-
1890
- #
1891
- # @return [HeadingCollection]
1892
- #
1893
-
1894
- def h6s(*args)
1895
- HeadingCollection.new(self, extract_selector(args).merge(:tag_name => "h6"))
1896
- end
1897
-
1898
- Watir.tag_to_class[:h6] = Heading
1899
-
1900
- #
1901
- # @return [Head]
1902
- #
1903
-
1904
- def head(*args)
1905
- Head.new(self, extract_selector(args).merge(:tag_name => "head"))
1906
- end
1907
-
1908
- #
1909
- # @return [HeadCollection]
1910
- #
1911
-
1912
- def heads(*args)
1913
- HeadCollection.new(self, extract_selector(args).merge(:tag_name => "head"))
1914
- end
1915
-
1916
- Watir.tag_to_class[:head] = Head
1917
-
1918
- #
1919
- # @return [HTMLElement]
1920
- #
1921
-
1922
- def header(*args)
1923
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "header"))
1924
- end
1925
-
1926
- #
1927
- # @return [HTMLElementCollection]
1928
- #
1929
-
1930
- def headers(*args)
1931
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "header"))
1932
- end
1933
-
1934
- Watir.tag_to_class[:header] = HTMLElement
1935
-
1936
- #
1937
- # @return [HTMLElement]
1938
- #
1939
-
1940
- def hgroup(*args)
1941
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "hgroup"))
1942
- end
1943
-
1944
- #
1945
- # @return [HTMLElementCollection]
1946
- #
1947
-
1948
- def hgroups(*args)
1949
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "hgroup"))
1950
- end
1951
-
1952
- Watir.tag_to_class[:hgroup] = HTMLElement
1953
-
1954
- #
1955
- # @return [HR]
1956
- #
1957
-
1958
- def hr(*args)
1959
- HR.new(self, extract_selector(args).merge(:tag_name => "hr"))
1960
- end
1961
-
1962
- #
1963
- # @return [HRCollection]
1964
- #
1965
-
1966
- def hrs(*args)
1967
- HRCollection.new(self, extract_selector(args).merge(:tag_name => "hr"))
1968
- end
1969
-
1970
- Watir.tag_to_class[:hr] = HR
1971
-
1972
- #
1973
- # @return [Html]
1974
- #
1975
-
1976
- def html(*args)
1977
- Html.new(self, extract_selector(args).merge(:tag_name => "html"))
1978
- end
1979
-
1980
- #
1981
- # @return [HtmlCollection]
1982
- #
1983
-
1984
- def htmls(*args)
1985
- HtmlCollection.new(self, extract_selector(args).merge(:tag_name => "html"))
1986
- end
1987
-
1988
- Watir.tag_to_class[:html] = Html
1989
-
1990
- #
1991
- # @return [HTMLElement]
1992
- #
1993
-
1994
- def i(*args)
1995
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "i"))
1996
- end
1997
-
1998
- #
1999
- # @return [HTMLElementCollection]
2000
- #
2001
-
2002
- def is(*args)
2003
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "i"))
2004
- end
2005
-
2006
- Watir.tag_to_class[:i] = HTMLElement
2007
-
2008
- #
2009
- # @return [IFrame]
2010
- #
2011
-
2012
- def iframe(*args)
2013
- IFrame.new(self, extract_selector(args).merge(:tag_name => "iframe"))
2014
- end
2015
-
2016
- #
2017
- # @return [IFrameCollection]
2018
- #
2019
-
2020
- def iframes(*args)
2021
- IFrameCollection.new(self, extract_selector(args).merge(:tag_name => "iframe"))
2022
- end
2023
-
2024
- Watir.tag_to_class[:iframe] = IFrame
2025
-
2026
- #
2027
- # @return [Image]
2028
- #
2029
-
2030
- def img(*args)
2031
- Image.new(self, extract_selector(args).merge(:tag_name => "img"))
2032
- end
2033
-
2034
- #
2035
- # @return [ImageCollection]
2036
- #
2037
-
2038
- def imgs(*args)
2039
- ImageCollection.new(self, extract_selector(args).merge(:tag_name => "img"))
2040
- end
2041
-
2042
- Watir.tag_to_class[:img] = Image
2043
-
2044
- #
2045
- # @return [Input]
2046
- #
2047
-
2048
- def input(*args)
2049
- Input.new(self, extract_selector(args).merge(:tag_name => "input"))
2050
- end
2051
-
2052
- #
2053
- # @return [InputCollection]
2054
- #
2055
-
2056
- def inputs(*args)
2057
- InputCollection.new(self, extract_selector(args).merge(:tag_name => "input"))
2058
- end
2059
-
2060
- Watir.tag_to_class[:input] = Input
2061
-
2062
- #
2063
- # @return [Mod]
2064
- #
2065
-
2066
- def ins(*args)
2067
- Mod.new(self, extract_selector(args).merge(:tag_name => "ins"))
2068
- end
2069
-
2070
- #
2071
- # @return [ModCollection]
2072
- #
2073
-
2074
- def inses(*args)
2075
- ModCollection.new(self, extract_selector(args).merge(:tag_name => "ins"))
2076
- end
2077
-
2078
- Watir.tag_to_class[:ins] = Mod
2079
-
2080
- #
2081
- # @return [HTMLElement]
2082
- #
2083
-
2084
- def kbd(*args)
2085
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "kbd"))
2086
- end
2087
-
2088
- #
2089
- # @return [HTMLElementCollection]
2090
- #
2091
-
2092
- def kbds(*args)
2093
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "kbd"))
2094
- end
2095
-
2096
- Watir.tag_to_class[:kbd] = HTMLElement
2097
-
2098
- #
2099
- # @return [Keygen]
2100
- #
2101
-
2102
- def keygen(*args)
2103
- Keygen.new(self, extract_selector(args).merge(:tag_name => "keygen"))
2104
- end
2105
-
2106
- #
2107
- # @return [KeygenCollection]
2108
- #
2109
-
2110
- def keygens(*args)
2111
- KeygenCollection.new(self, extract_selector(args).merge(:tag_name => "keygen"))
2112
- end
2113
-
2114
- Watir.tag_to_class[:keygen] = Keygen
2115
-
2116
- #
2117
- # @return [Label]
2118
- #
2119
-
2120
- def label(*args)
2121
- Label.new(self, extract_selector(args).merge(:tag_name => "label"))
2122
- end
2123
-
2124
- #
2125
- # @return [LabelCollection]
2126
- #
2127
-
2128
- def labels(*args)
2129
- LabelCollection.new(self, extract_selector(args).merge(:tag_name => "label"))
2130
- end
2131
-
2132
- Watir.tag_to_class[:label] = Label
2133
-
2134
- #
2135
- # @return [Legend]
2136
- #
2137
-
2138
- def legend(*args)
2139
- Legend.new(self, extract_selector(args).merge(:tag_name => "legend"))
2140
- end
2141
-
2142
- #
2143
- # @return [LegendCollection]
2144
- #
2145
-
2146
- def legends(*args)
2147
- LegendCollection.new(self, extract_selector(args).merge(:tag_name => "legend"))
2148
- end
2149
-
2150
- Watir.tag_to_class[:legend] = Legend
2151
-
2152
- #
2153
- # @return [LI]
2154
- #
2155
-
2156
- def li(*args)
2157
- LI.new(self, extract_selector(args).merge(:tag_name => "li"))
2158
- end
2159
-
2160
- #
2161
- # @return [LICollection]
2162
- #
2163
-
2164
- def lis(*args)
2165
- LICollection.new(self, extract_selector(args).merge(:tag_name => "li"))
2166
- end
2167
-
2168
- Watir.tag_to_class[:li] = LI
2169
-
2170
- #
2171
- # @return [HTMLElement]
2172
- #
2173
-
2174
- def main(*args)
2175
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "main"))
2176
- end
2177
-
2178
- #
2179
- # @return [HTMLElementCollection]
2180
- #
2181
-
2182
- def mains(*args)
2183
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "main"))
2184
- end
2185
-
2186
- Watir.tag_to_class[:main] = HTMLElement
2187
-
2188
- #
2189
- # @return [Map]
2190
- #
2191
-
2192
- def map(*args)
2193
- Map.new(self, extract_selector(args).merge(:tag_name => "map"))
2194
- end
2195
-
2196
- #
2197
- # @return [MapCollection]
2198
- #
2199
-
2200
- def maps(*args)
2201
- MapCollection.new(self, extract_selector(args).merge(:tag_name => "map"))
2202
- end
2203
-
2204
- Watir.tag_to_class[:map] = Map
2205
-
2206
- #
2207
- # @return [HTMLElement]
2208
- #
2209
-
2210
- def mark(*args)
2211
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "mark"))
2212
- end
2213
-
2214
- #
2215
- # @return [HTMLElementCollection]
2216
- #
2217
-
2218
- def marks(*args)
2219
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "mark"))
2220
- end
2221
-
2222
- Watir.tag_to_class[:mark] = HTMLElement
2223
-
2224
- #
2225
- # @return [Menu]
2226
- #
2227
-
2228
- def menu(*args)
2229
- Menu.new(self, extract_selector(args).merge(:tag_name => "menu"))
2230
- end
2231
-
2232
- #
2233
- # @return [MenuCollection]
2234
- #
2235
-
2236
- def menus(*args)
2237
- MenuCollection.new(self, extract_selector(args).merge(:tag_name => "menu"))
2238
- end
2239
-
2240
- Watir.tag_to_class[:menu] = Menu
2241
-
2242
- #
2243
- # @return [MenuItem]
2244
- #
2245
-
2246
- def menuitem(*args)
2247
- MenuItem.new(self, extract_selector(args).merge(:tag_name => "menuitem"))
2248
- end
2249
-
2250
- #
2251
- # @return [MenuItemCollection]
2252
- #
2253
-
2254
- def menuitems(*args)
2255
- MenuItemCollection.new(self, extract_selector(args).merge(:tag_name => "menuitem"))
2256
- end
2257
-
2258
- Watir.tag_to_class[:menuitem] = MenuItem
2259
-
2260
- #
2261
- # @return [Meta]
2262
- #
2263
-
2264
- def meta(*args)
2265
- Meta.new(self, extract_selector(args).merge(:tag_name => "meta"))
2266
- end
2267
-
2268
- #
2269
- # @return [MetaCollection]
2270
- #
2271
-
2272
- def metas(*args)
2273
- MetaCollection.new(self, extract_selector(args).merge(:tag_name => "meta"))
2274
- end
2275
-
2276
- Watir.tag_to_class[:meta] = Meta
2277
-
2278
- #
2279
- # @return [Meter]
2280
- #
2281
-
2282
- def meter(*args)
2283
- Meter.new(self, extract_selector(args).merge(:tag_name => "meter"))
2284
- end
2285
-
2286
- #
2287
- # @return [MeterCollection]
2288
- #
2289
-
2290
- def meters(*args)
2291
- MeterCollection.new(self, extract_selector(args).merge(:tag_name => "meter"))
2292
- end
2293
-
2294
- Watir.tag_to_class[:meter] = Meter
2295
-
2296
- #
2297
- # @return [HTMLElement]
2298
- #
2299
-
2300
- def nav(*args)
2301
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "nav"))
2302
- end
2303
-
2304
- #
2305
- # @return [HTMLElementCollection]
2306
- #
2307
-
2308
- def navs(*args)
2309
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "nav"))
2310
- end
2311
-
2312
- Watir.tag_to_class[:nav] = HTMLElement
2313
-
2314
- #
2315
- # @return [HTMLElement]
2316
- #
2317
-
2318
- def noscript(*args)
2319
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "noscript"))
2320
- end
2321
-
2322
- #
2323
- # @return [HTMLElementCollection]
2324
- #
2325
-
2326
- def noscripts(*args)
2327
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "noscript"))
2328
- end
2329
-
2330
- Watir.tag_to_class[:noscript] = HTMLElement
2331
-
2332
- #
2333
- # @return [Object]
2334
- #
2335
-
2336
- def object(*args)
2337
- Object.new(self, extract_selector(args).merge(:tag_name => "object"))
2338
- end
2339
-
2340
- #
2341
- # @return [ObjectCollection]
2342
- #
2343
-
2344
- def objects(*args)
2345
- ObjectCollection.new(self, extract_selector(args).merge(:tag_name => "object"))
2346
- end
2347
-
2348
- Watir.tag_to_class[:object] = Object
2349
-
2350
- #
2351
- # @return [OList]
2352
- #
2353
-
2354
- def ol(*args)
2355
- OList.new(self, extract_selector(args).merge(:tag_name => "ol"))
2356
- end
2357
-
2358
- #
2359
- # @return [OListCollection]
2360
- #
2361
-
2362
- def ols(*args)
2363
- OListCollection.new(self, extract_selector(args).merge(:tag_name => "ol"))
2364
- end
2365
-
2366
- Watir.tag_to_class[:ol] = OList
2367
-
2368
- #
2369
- # @return [OptGroup]
2370
- #
2371
-
2372
- def optgroup(*args)
2373
- OptGroup.new(self, extract_selector(args).merge(:tag_name => "optgroup"))
2374
- end
2375
-
2376
- #
2377
- # @return [OptGroupCollection]
2378
- #
2379
-
2380
- def optgroups(*args)
2381
- OptGroupCollection.new(self, extract_selector(args).merge(:tag_name => "optgroup"))
2382
- end
2383
-
2384
- Watir.tag_to_class[:optgroup] = OptGroup
2385
-
2386
- #
2387
- # @return [Option]
2388
- #
2389
-
2390
- def option(*args)
2391
- Option.new(self, extract_selector(args).merge(:tag_name => "option"))
2392
- end
2393
-
2394
- #
2395
- # @return [OptionCollection]
2396
- #
2397
-
2398
- def options(*args)
2399
- OptionCollection.new(self, extract_selector(args).merge(:tag_name => "option"))
2400
- end
2401
-
2402
- Watir.tag_to_class[:option] = Option
2403
-
2404
- #
2405
- # @return [Output]
2406
- #
2407
-
2408
- def output(*args)
2409
- Output.new(self, extract_selector(args).merge(:tag_name => "output"))
2410
- end
2411
-
2412
- #
2413
- # @return [OutputCollection]
2414
- #
2415
-
2416
- def outputs(*args)
2417
- OutputCollection.new(self, extract_selector(args).merge(:tag_name => "output"))
2418
- end
2419
-
2420
- Watir.tag_to_class[:output] = Output
2421
-
2422
- #
2423
- # @return [Paragraph]
2424
- #
2425
-
2426
- def p(*args)
2427
- Paragraph.new(self, extract_selector(args).merge(:tag_name => "p"))
2428
- end
2429
-
2430
- #
2431
- # @return [ParagraphCollection]
2432
- #
2433
-
2434
- def ps(*args)
2435
- ParagraphCollection.new(self, extract_selector(args).merge(:tag_name => "p"))
2436
- end
2437
-
2438
- Watir.tag_to_class[:p] = Paragraph
2439
-
2440
- #
2441
- # @return [Param]
2442
- #
2443
-
2444
- def param(*args)
2445
- Param.new(self, extract_selector(args).merge(:tag_name => "param"))
2446
- end
2447
-
2448
- #
2449
- # @return [ParamCollection]
2450
- #
2451
-
2452
- def params(*args)
2453
- ParamCollection.new(self, extract_selector(args).merge(:tag_name => "param"))
2454
- end
2455
-
2456
- Watir.tag_to_class[:param] = Param
2457
-
2458
- #
2459
- # @return [Pre]
2460
- #
2461
-
2462
- def pre(*args)
2463
- Pre.new(self, extract_selector(args).merge(:tag_name => "pre"))
2464
- end
2465
-
2466
- #
2467
- # @return [PreCollection]
2468
- #
2469
-
2470
- def pres(*args)
2471
- PreCollection.new(self, extract_selector(args).merge(:tag_name => "pre"))
2472
- end
2473
-
2474
- Watir.tag_to_class[:pre] = Pre
2475
-
2476
- #
2477
- # @return [Progress]
2478
- #
2479
-
2480
- def progress(*args)
2481
- Progress.new(self, extract_selector(args).merge(:tag_name => "progress"))
2482
- end
2483
-
2484
- #
2485
- # @return [ProgressCollection]
2486
- #
2487
-
2488
- def progresses(*args)
2489
- ProgressCollection.new(self, extract_selector(args).merge(:tag_name => "progress"))
2490
- end
2491
-
2492
- Watir.tag_to_class[:progress] = Progress
2493
-
2494
- #
2495
- # @return [Quote]
2496
- #
2497
-
2498
- def q(*args)
2499
- Quote.new(self, extract_selector(args).merge(:tag_name => "q"))
2500
- end
2501
-
2502
- #
2503
- # @return [QuoteCollection]
2504
- #
2505
-
2506
- def qs(*args)
2507
- QuoteCollection.new(self, extract_selector(args).merge(:tag_name => "q"))
2508
- end
2509
-
2510
- Watir.tag_to_class[:q] = Quote
2511
-
2512
- #
2513
- # @return [HTMLElement]
2514
- #
2515
-
2516
- def rp(*args)
2517
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "rp"))
2518
- end
2519
-
2520
- #
2521
- # @return [HTMLElementCollection]
2522
- #
2523
-
2524
- def rps(*args)
2525
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "rp"))
2526
- end
2527
-
2528
- Watir.tag_to_class[:rp] = HTMLElement
2529
-
2530
- #
2531
- # @return [HTMLElement]
2532
- #
2533
-
2534
- def rt(*args)
2535
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "rt"))
2536
- end
2537
-
2538
- #
2539
- # @return [HTMLElementCollection]
2540
- #
2541
-
2542
- def rts(*args)
2543
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "rt"))
2544
- end
2545
-
2546
- Watir.tag_to_class[:rt] = HTMLElement
2547
-
2548
- #
2549
- # @return [HTMLElement]
2550
- #
2551
-
2552
- def ruby(*args)
2553
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "ruby"))
2554
- end
2555
-
2556
- #
2557
- # @return [HTMLElementCollection]
2558
- #
2559
-
2560
- def rubies(*args)
2561
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "ruby"))
2562
- end
2563
-
2564
- Watir.tag_to_class[:ruby] = HTMLElement
2565
-
2566
- #
2567
- # @return [HTMLElement]
2568
- #
2569
-
2570
- def s(*args)
2571
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "s"))
2572
- end
2573
-
2574
- #
2575
- # @return [HTMLElementCollection]
2576
- #
2577
-
2578
- def ss(*args)
2579
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "s"))
2580
- end
2581
-
2582
- Watir.tag_to_class[:s] = HTMLElement
2583
-
2584
- #
2585
- # @return [HTMLElement]
2586
- #
2587
-
2588
- def samp(*args)
2589
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "samp"))
2590
- end
2591
-
2592
- #
2593
- # @return [HTMLElementCollection]
2594
- #
2595
-
2596
- def samps(*args)
2597
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "samp"))
2598
- end
2599
-
2600
- Watir.tag_to_class[:samp] = HTMLElement
2601
-
2602
- #
2603
- # @return [Script]
2604
- #
2605
-
2606
- def script(*args)
2607
- Script.new(self, extract_selector(args).merge(:tag_name => "script"))
2608
- end
2609
-
2610
- #
2611
- # @return [ScriptCollection]
2612
- #
2613
-
2614
- def scripts(*args)
2615
- ScriptCollection.new(self, extract_selector(args).merge(:tag_name => "script"))
2616
- end
2617
-
2618
- Watir.tag_to_class[:script] = Script
2619
-
2620
- #
2621
- # @return [HTMLElement]
2622
- #
2623
-
2624
- def section(*args)
2625
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "section"))
2626
- end
2627
-
2628
- #
2629
- # @return [HTMLElementCollection]
2630
- #
2631
-
2632
- def sections(*args)
2633
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "section"))
2634
- end
2635
-
2636
- Watir.tag_to_class[:section] = HTMLElement
2637
-
2638
- #
2639
- # @return [Select]
2640
- #
2641
-
2642
- def select(*args)
2643
- Select.new(self, extract_selector(args).merge(:tag_name => "select"))
2644
- end
2645
-
2646
- #
2647
- # @return [SelectCollection]
2648
- #
2649
-
2650
- def selects(*args)
2651
- SelectCollection.new(self, extract_selector(args).merge(:tag_name => "select"))
2652
- end
2653
-
2654
- Watir.tag_to_class[:select] = Select
2655
-
2656
- #
2657
- # @return [HTMLElement]
2658
- #
2659
-
2660
- def small(*args)
2661
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "small"))
2662
- end
2663
-
2664
- #
2665
- # @return [HTMLElementCollection]
2666
- #
2667
-
2668
- def smalls(*args)
2669
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "small"))
2670
- end
2671
-
2672
- Watir.tag_to_class[:small] = HTMLElement
2673
-
2674
- #
2675
- # @return [Source]
2676
- #
2677
-
2678
- def source(*args)
2679
- Source.new(self, extract_selector(args).merge(:tag_name => "source"))
2680
- end
2681
-
2682
- #
2683
- # @return [SourceCollection]
2684
- #
2685
-
2686
- def sources(*args)
2687
- SourceCollection.new(self, extract_selector(args).merge(:tag_name => "source"))
2688
- end
2689
-
2690
- Watir.tag_to_class[:source] = Source
2691
-
2692
- #
2693
- # @return [Span]
2694
- #
2695
-
2696
- def span(*args)
2697
- Span.new(self, extract_selector(args).merge(:tag_name => "span"))
2698
- end
2699
-
2700
- #
2701
- # @return [SpanCollection]
2702
- #
2703
-
2704
- def spans(*args)
2705
- SpanCollection.new(self, extract_selector(args).merge(:tag_name => "span"))
2706
- end
2707
-
2708
- Watir.tag_to_class[:span] = Span
2709
-
2710
- #
2711
- # @return [HTMLElement]
2712
- #
2713
-
2714
- def strong(*args)
2715
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "strong"))
2716
- end
2717
-
2718
- #
2719
- # @return [HTMLElementCollection]
2720
- #
2721
-
2722
- def strongs(*args)
2723
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "strong"))
2724
- end
2725
-
2726
- Watir.tag_to_class[:strong] = HTMLElement
2727
-
2728
- #
2729
- # @return [Style]
2730
- #
2731
-
2732
- def style(*args)
2733
- Style.new(self, extract_selector(args).merge(:tag_name => "style"))
2734
- end
2735
-
2736
- #
2737
- # @return [StyleCollection]
2738
- #
2739
-
2740
- def styles(*args)
2741
- StyleCollection.new(self, extract_selector(args).merge(:tag_name => "style"))
2742
- end
2743
-
2744
- Watir.tag_to_class[:style] = Style
2745
-
2746
- #
2747
- # @return [HTMLElement]
2748
- #
2749
-
2750
- def sub(*args)
2751
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "sub"))
2752
- end
2753
-
2754
- #
2755
- # @return [HTMLElementCollection]
2756
- #
2757
-
2758
- def subs(*args)
2759
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "sub"))
2760
- end
2761
-
2762
- Watir.tag_to_class[:sub] = HTMLElement
2763
-
2764
- #
2765
- # @return [HTMLElement]
2766
- #
2767
-
2768
- def summary(*args)
2769
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "summary"))
2770
- end
2771
-
2772
- #
2773
- # @return [HTMLElementCollection]
2774
- #
2775
-
2776
- def summaries(*args)
2777
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "summary"))
2778
- end
2779
-
2780
- Watir.tag_to_class[:summary] = HTMLElement
2781
-
2782
- #
2783
- # @return [HTMLElement]
2784
- #
2785
-
2786
- def sup(*args)
2787
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "sup"))
2788
- end
2789
-
2790
- #
2791
- # @return [HTMLElementCollection]
2792
- #
2793
-
2794
- def sups(*args)
2795
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "sup"))
2796
- end
2797
-
2798
- Watir.tag_to_class[:sup] = HTMLElement
2799
-
2800
- #
2801
- # @return [Table]
2802
- #
2803
-
2804
- def table(*args)
2805
- Table.new(self, extract_selector(args).merge(:tag_name => "table"))
2806
- end
2807
-
2808
- #
2809
- # @return [TableCollection]
2810
- #
2811
-
2812
- def tables(*args)
2813
- TableCollection.new(self, extract_selector(args).merge(:tag_name => "table"))
2814
- end
2815
-
2816
- Watir.tag_to_class[:table] = Table
2817
-
2818
- #
2819
- # @return [TableSection]
2820
- #
2821
-
2822
- def tbody(*args)
2823
- TableSection.new(self, extract_selector(args).merge(:tag_name => "tbody"))
2824
- end
2825
-
2826
- #
2827
- # @return [TableSectionCollection]
2828
- #
2829
-
2830
- def tbodys(*args)
2831
- TableSectionCollection.new(self, extract_selector(args).merge(:tag_name => "tbody"))
2832
- end
2833
-
2834
- Watir.tag_to_class[:tbody] = TableSection
2835
-
2836
- #
2837
- # @return [TableDataCell]
2838
- #
2839
-
2840
- def td(*args)
2841
- TableDataCell.new(self, extract_selector(args).merge(:tag_name => "td"))
2842
- end
2843
-
2844
- #
2845
- # @return [TableDataCellCollection]
2846
- #
2847
-
2848
- def tds(*args)
2849
- TableDataCellCollection.new(self, extract_selector(args).merge(:tag_name => "td"))
2850
- end
2851
-
2852
- Watir.tag_to_class[:td] = TableDataCell
2853
-
2854
- #
2855
- # @return [Template]
2856
- #
2857
-
2858
- def template(*args)
2859
- Template.new(self, extract_selector(args).merge(:tag_name => "template"))
2860
- end
2861
-
2862
- #
2863
- # @return [TemplateCollection]
2864
- #
2865
-
2866
- def templates(*args)
2867
- TemplateCollection.new(self, extract_selector(args).merge(:tag_name => "template"))
2868
- end
2869
-
2870
- Watir.tag_to_class[:template] = Template
2871
-
2872
- #
2873
- # @return [TextArea]
2874
- #
2875
-
2876
- def textarea(*args)
2877
- TextArea.new(self, extract_selector(args).merge(:tag_name => "textarea"))
2878
- end
2879
-
2880
- #
2881
- # @return [TextAreaCollection]
2882
- #
2883
-
2884
- def textareas(*args)
2885
- TextAreaCollection.new(self, extract_selector(args).merge(:tag_name => "textarea"))
2886
- end
2887
-
2888
- Watir.tag_to_class[:textarea] = TextArea
2889
-
2890
- #
2891
- # @return [TableSection]
2892
- #
2893
-
2894
- def tfoot(*args)
2895
- TableSection.new(self, extract_selector(args).merge(:tag_name => "tfoot"))
2896
- end
2897
-
2898
- #
2899
- # @return [TableSectionCollection]
2900
- #
2901
-
2902
- def tfoots(*args)
2903
- TableSectionCollection.new(self, extract_selector(args).merge(:tag_name => "tfoot"))
2904
- end
2905
-
2906
- Watir.tag_to_class[:tfoot] = TableSection
2907
-
2908
- #
2909
- # @return [TableHeaderCell]
2910
- #
2911
-
2912
- def th(*args)
2913
- TableHeaderCell.new(self, extract_selector(args).merge(:tag_name => "th"))
2914
- end
2915
-
2916
- #
2917
- # @return [TableHeaderCellCollection]
2918
- #
2919
-
2920
- def ths(*args)
2921
- TableHeaderCellCollection.new(self, extract_selector(args).merge(:tag_name => "th"))
2922
- end
2923
-
2924
- Watir.tag_to_class[:th] = TableHeaderCell
2925
-
2926
- #
2927
- # @return [TableSection]
2928
- #
2929
-
2930
- def thead(*args)
2931
- TableSection.new(self, extract_selector(args).merge(:tag_name => "thead"))
2932
- end
2933
-
2934
- #
2935
- # @return [TableSectionCollection]
2936
- #
2937
-
2938
- def theads(*args)
2939
- TableSectionCollection.new(self, extract_selector(args).merge(:tag_name => "thead"))
2940
- end
2941
-
2942
- Watir.tag_to_class[:thead] = TableSection
2943
-
2944
- #
2945
- # @return [Time]
2946
- #
2947
-
2948
- def time(*args)
2949
- Time.new(self, extract_selector(args).merge(:tag_name => "time"))
2950
- end
2951
-
2952
- #
2953
- # @return [TimeCollection]
2954
- #
2955
-
2956
- def times(*args)
2957
- TimeCollection.new(self, extract_selector(args).merge(:tag_name => "time"))
2958
- end
2959
-
2960
- Watir.tag_to_class[:time] = Time
2961
-
2962
- #
2963
- # @return [Title]
2964
- #
2965
-
2966
- def title(*args)
2967
- Title.new(self, extract_selector(args).merge(:tag_name => "title"))
2968
- end
2969
-
2970
- #
2971
- # @return [TitleCollection]
2972
- #
2973
-
2974
- def titles(*args)
2975
- TitleCollection.new(self, extract_selector(args).merge(:tag_name => "title"))
2976
- end
2977
-
2978
- Watir.tag_to_class[:title] = Title
2979
-
2980
- #
2981
- # @return [TableRow]
2982
- #
2983
-
2984
- def tr(*args)
2985
- TableRow.new(self, extract_selector(args).merge(:tag_name => "tr"))
2986
- end
2987
-
2988
- #
2989
- # @return [TableRowCollection]
2990
- #
2991
-
2992
- def trs(*args)
2993
- TableRowCollection.new(self, extract_selector(args).merge(:tag_name => "tr"))
2994
- end
2995
-
2996
- Watir.tag_to_class[:tr] = TableRow
2997
-
2998
- #
2999
- # @return [Track]
3000
- #
3001
-
3002
- def track(*args)
3003
- Track.new(self, extract_selector(args).merge(:tag_name => "track"))
3004
- end
3005
-
3006
- #
3007
- # @return [TrackCollection]
3008
- #
3009
-
3010
- def tracks(*args)
3011
- TrackCollection.new(self, extract_selector(args).merge(:tag_name => "track"))
3012
- end
3013
-
3014
- Watir.tag_to_class[:track] = Track
3015
-
3016
- #
3017
- # @return [HTMLElement]
3018
- #
3019
-
3020
- def u(*args)
3021
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "u"))
3022
- end
3023
-
3024
- #
3025
- # @return [HTMLElementCollection]
3026
- #
3027
-
3028
- def us(*args)
3029
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "u"))
3030
- end
3031
-
3032
- Watir.tag_to_class[:u] = HTMLElement
3033
-
3034
- #
3035
- # @return [UList]
3036
- #
3037
-
3038
- def ul(*args)
3039
- UList.new(self, extract_selector(args).merge(:tag_name => "ul"))
3040
- end
3041
-
3042
- #
3043
- # @return [UListCollection]
3044
- #
3045
-
3046
- def uls(*args)
3047
- UListCollection.new(self, extract_selector(args).merge(:tag_name => "ul"))
3048
- end
3049
-
3050
- Watir.tag_to_class[:ul] = UList
3051
-
3052
- #
3053
- # @return [HTMLElement]
3054
- #
3055
-
3056
- def var(*args)
3057
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "var"))
3058
- end
3059
-
3060
- #
3061
- # @return [HTMLElementCollection]
3062
- #
3063
-
3064
- def vars(*args)
3065
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "var"))
3066
- end
3067
-
3068
- Watir.tag_to_class[:var] = HTMLElement
3069
-
3070
- #
3071
- # @return [Video]
3072
- #
3073
-
3074
- def video(*args)
3075
- Video.new(self, extract_selector(args).merge(:tag_name => "video"))
3076
- end
3077
-
3078
- #
3079
- # @return [VideoCollection]
3080
- #
3081
-
3082
- def videos(*args)
3083
- VideoCollection.new(self, extract_selector(args).merge(:tag_name => "video"))
3084
- end
3085
-
3086
- Watir.tag_to_class[:video] = Video
3087
-
3088
- #
3089
- # @return [HTMLElement]
3090
- #
3091
-
3092
- def wbr(*args)
3093
- HTMLElement.new(self, extract_selector(args).merge(:tag_name => "wbr"))
3094
- end
3095
-
3096
- #
3097
- # @return [HTMLElementCollection]
3098
- #
3099
-
3100
- def wbrs(*args)
3101
- HTMLElementCollection.new(self, extract_selector(args).merge(:tag_name => "wbr"))
3102
- end
3103
-
3104
- Watir.tag_to_class[:wbr] = HTMLElement
3105
- end # Container
3106
- end # Watir