meeane-page-object 0.1.10 → 0.1.11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (253) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +7 -7
  3. data/.rspec +2 -2
  4. data/.ruby-gemset +1 -1
  5. data/.ruby-version +1 -1
  6. data/.travis.yml +10 -10
  7. data/ChangeLog +790 -790
  8. data/Gemfile +13 -13
  9. data/Guardfile +20 -20
  10. data/LICENSE +20 -20
  11. data/README.md +1 -1
  12. data/Rakefile +35 -35
  13. data/cucumber.yml +10 -10
  14. data/features/area.feature +35 -35
  15. data/features/async.feature +30 -30
  16. data/features/audio.feature +68 -68
  17. data/features/button.feature +88 -87
  18. data/features/canvas.feature +37 -37
  19. data/features/check_box.feature +55 -55
  20. data/features/div.feature +45 -45
  21. data/features/element.feature +322 -322
  22. data/features/file_field.feature +40 -40
  23. data/features/form.feature +43 -43
  24. data/features/frames.feature +75 -75
  25. data/features/generic_elements.feature +29 -29
  26. data/features/gxt_table_extension.feature +24 -24
  27. data/features/headings.feature +97 -97
  28. data/features/hidden_field.feature +45 -45
  29. data/features/html/async.html +36 -36
  30. data/features/html/double_click.html +12 -12
  31. data/features/html/failure.html +7 -7
  32. data/features/html/frame_1.html +17 -17
  33. data/features/html/frame_2.html +15 -15
  34. data/features/html/frame_3.html +14 -14
  35. data/features/html/frames.html +12 -12
  36. data/features/html/hover.html +11 -11
  37. data/features/html/iframes.html +12 -12
  38. data/features/html/indexed_property.html +51 -51
  39. data/features/html/modal.html +17 -17
  40. data/features/html/modal_1.html +37 -37
  41. data/features/html/modal_2.html +26 -26
  42. data/features/html/multi_elements.html +144 -144
  43. data/features/html/nested_elements.html +77 -77
  44. data/features/html/nested_frame_2.html +11 -11
  45. data/features/html/nested_frame_3.html +14 -14
  46. data/features/html/nested_frames.html +10 -10
  47. data/features/html/static_elements.html +233 -226
  48. data/features/html/success.html +7 -7
  49. data/features/html/sun.html +7 -7
  50. data/features/image.feature +50 -50
  51. data/features/indexed_property.feature +97 -97
  52. data/features/javascript.feature +27 -27
  53. data/features/label.feature +46 -46
  54. data/features/link.feature +52 -52
  55. data/features/list_item.feature +36 -36
  56. data/features/modal_dialog.feature +15 -15
  57. data/features/multi_elements.feature +486 -486
  58. data/features/nested_elements.feature +117 -117
  59. data/features/ordered_list.feature +56 -56
  60. data/features/page_level_actions.feature +90 -90
  61. data/features/paragraph.feature +35 -35
  62. data/features/radio_button.feature +58 -58
  63. data/features/radio_button_collinson.feature +12 -58
  64. data/features/radio_button_group.feature +29 -29
  65. data/features/sample-app/public/jquery-1.3.2.js +4376 -4376
  66. data/features/sample-app/public/jquery.html +30 -30
  67. data/features/sample-app/public/prototype-1.6.0.3.js +4319 -4319
  68. data/features/sample-app/public/prototype.html +35 -35
  69. data/features/sample-app/sample_app.rb +35 -35
  70. data/features/select_list.feature +86 -86
  71. data/features/span.feature +37 -37
  72. data/features/step_definitions/accessor_steps.rb +60 -60
  73. data/features/step_definitions/area_steps.rb +19 -19
  74. data/features/step_definitions/async_steps.rb +83 -83
  75. data/features/step_definitions/audio_steps.rb +27 -27
  76. data/features/step_definitions/button_steps.rb +43 -43
  77. data/features/step_definitions/canvas_steps.rb +15 -15
  78. data/features/step_definitions/check_box_steps.rb +35 -35
  79. data/features/step_definitions/div_steps.rb +19 -19
  80. data/features/step_definitions/element_steps.rb +266 -266
  81. data/features/step_definitions/file_field_steps.rb +19 -19
  82. data/features/step_definitions/form_steps.rb +18 -18
  83. data/features/step_definitions/frames_steps.rb +159 -159
  84. data/features/step_definitions/generic_element_steps.rb +31 -31
  85. data/features/step_definitions/gxt_table_steps.rb +58 -58
  86. data/features/step_definitions/headings_steps.rb +12 -12
  87. data/features/step_definitions/hidden_field_steps.rb +26 -26
  88. data/features/step_definitions/image_steps.rb +27 -27
  89. data/features/step_definitions/indexed_property_steps.rb +128 -128
  90. data/features/step_definitions/javascript_steps.rb +52 -52
  91. data/features/step_definitions/label_steps.rb +19 -19
  92. data/features/step_definitions/link_steps.rb +40 -40
  93. data/features/step_definitions/list_item_steps.rb +19 -19
  94. data/features/step_definitions/modal_dialog_steps.rb +62 -62
  95. data/features/step_definitions/multi_elements_steps.rb +528 -528
  96. data/features/step_definitions/nested_elements_steps.rb +212 -212
  97. data/features/step_definitions/ordered_list_steps.rb +23 -23
  98. data/features/step_definitions/page_level_actions_steps.rb +135 -135
  99. data/features/step_definitions/page_traversal_steps.rb +4 -4
  100. data/features/step_definitions/paragraph_steps.rb +28 -28
  101. data/features/step_definitions/radio_button_collinson_steps.rb +2 -46
  102. data/features/step_definitions/radio_button_group_steps.rb +35 -35
  103. data/features/step_definitions/radio_button_steps.rb +26 -46
  104. data/features/step_definitions/select_list_steps.rb +65 -65
  105. data/features/step_definitions/span_steps.rb +19 -19
  106. data/features/step_definitions/table_cell_steps.rb +14 -14
  107. data/features/step_definitions/table_steps.rb +66 -66
  108. data/features/step_definitions/text_area_steps.rb +34 -34
  109. data/features/step_definitions/text_field_steps.rb +35 -35
  110. data/features/step_definitions/unordered_list_steps.rb +23 -23
  111. data/features/step_definitions/video_steps.rb +45 -45
  112. data/features/support/ajax_text_environment.rb +26 -26
  113. data/features/support/env.rb +8 -8
  114. data/features/support/hooks.rb +8 -8
  115. data/features/support/page.rb +370 -364
  116. data/features/support/persistent_browser.rb +70 -70
  117. data/features/support/targets/firefox14_osx.rb +6 -6
  118. data/features/support/targets/firefox14_windows7.rb +6 -6
  119. data/features/support/url_helper.rb +57 -57
  120. data/features/table.feature +114 -114
  121. data/features/table_cell.feature +45 -45
  122. data/features/text_area.feature +51 -51
  123. data/features/text_field.feature +70 -70
  124. data/features/unordered_list.feature +56 -56
  125. data/features/video.feature +73 -73
  126. data/lib/page-object.rb +408 -408
  127. data/lib/page-object/accessors.rb +1313 -1313
  128. data/lib/page-object/core_ext/string.rb +4 -4
  129. data/lib/page-object/element_locators.rb +21 -21
  130. data/lib/page-object/elements.rb +59 -59
  131. data/lib/page-object/elements/area.rb +31 -31
  132. data/lib/page-object/elements/audio.rb +9 -9
  133. data/lib/page-object/elements/button.rb +35 -35
  134. data/lib/page-object/elements/canvas.rb +23 -23
  135. data/lib/page-object/elements/check_box.rb +37 -37
  136. data/lib/page-object/elements/div.rb +19 -19
  137. data/lib/page-object/elements/element.rb +226 -226
  138. data/lib/page-object/elements/file_field.rb +38 -38
  139. data/lib/page-object/elements/form.rb +36 -36
  140. data/lib/page-object/elements/heading.rb +15 -15
  141. data/lib/page-object/elements/hidden_field.rb +22 -22
  142. data/lib/page-object/elements/image.rb +36 -36
  143. data/lib/page-object/elements/label.rb +36 -36
  144. data/lib/page-object/elements/link.rb +46 -46
  145. data/lib/page-object/elements/list_item.rb +19 -19
  146. data/lib/page-object/elements/media.rb +45 -45
  147. data/lib/page-object/elements/option.rb +10 -10
  148. data/lib/page-object/elements/ordered_list.rb +50 -50
  149. data/lib/page-object/elements/paragraph.rb +9 -9
  150. data/lib/page-object/elements/radio_button.rb +37 -37
  151. data/lib/page-object/elements/select_list.rb +42 -42
  152. data/lib/page-object/elements/span.rb +19 -19
  153. data/lib/page-object/elements/table.rb +68 -68
  154. data/lib/page-object/elements/table_cell.rb +28 -28
  155. data/lib/page-object/elements/table_row.rb +50 -50
  156. data/lib/page-object/elements/text_area.rb +38 -38
  157. data/lib/page-object/elements/text_field.rb +42 -42
  158. data/lib/page-object/elements/unordered_list.rb +51 -51
  159. data/lib/page-object/elements/video.rb +18 -18
  160. data/lib/page-object/indexed_properties.rb +36 -36
  161. data/lib/page-object/javascript/jquery.rb +14 -14
  162. data/lib/page-object/javascript/prototype.rb +14 -14
  163. data/lib/page-object/javascript/yui.rb +18 -18
  164. data/lib/page-object/javascript_framework_facade.rb +78 -78
  165. data/lib/page-object/loads_platform.rb +26 -26
  166. data/lib/page-object/locator_generator.rb +129 -129
  167. data/lib/page-object/nested_elements.rb +17 -17
  168. data/lib/page-object/page_factory.rb +108 -108
  169. data/lib/page-object/page_populator.rb +92 -92
  170. data/lib/page-object/platforms.rb +18 -18
  171. data/lib/page-object/platforms/selenium_webdriver.rb +17 -17
  172. data/lib/page-object/platforms/selenium_webdriver/button.rb +14 -14
  173. data/lib/page-object/platforms/selenium_webdriver/check_box.rb +29 -29
  174. data/lib/page-object/platforms/selenium_webdriver/element.rb +291 -291
  175. data/lib/page-object/platforms/selenium_webdriver/file_field.rb +16 -16
  176. data/lib/page-object/platforms/selenium_webdriver/form.rb +16 -16
  177. data/lib/page-object/platforms/selenium_webdriver/image.rb +28 -28
  178. data/lib/page-object/platforms/selenium_webdriver/label.rb +17 -18
  179. data/lib/page-object/platforms/selenium_webdriver/link.rb +23 -23
  180. data/lib/page-object/platforms/selenium_webdriver/ordered_list.rb +39 -39
  181. data/lib/page-object/platforms/selenium_webdriver/page_object.rb +1136 -1136
  182. data/lib/page-object/platforms/selenium_webdriver/radio_button.rb +22 -22
  183. data/lib/page-object/platforms/selenium_webdriver/select_list.rb +93 -93
  184. data/lib/page-object/platforms/selenium_webdriver/surrogate_selenium_element.rb +42 -42
  185. data/lib/page-object/platforms/selenium_webdriver/table.rb +42 -42
  186. data/lib/page-object/platforms/selenium_webdriver/table_row.rb +43 -43
  187. data/lib/page-object/platforms/selenium_webdriver/text_area.rb +17 -17
  188. data/lib/page-object/platforms/selenium_webdriver/text_field.rb +17 -17
  189. data/lib/page-object/platforms/selenium_webdriver/unordered_list.rb +39 -39
  190. data/lib/page-object/platforms/watir_webdriver.rb +18 -18
  191. data/lib/page-object/platforms/watir_webdriver/check_box.rb +29 -29
  192. data/lib/page-object/platforms/watir_webdriver/element.rb +249 -249
  193. data/lib/page-object/platforms/watir_webdriver/file_field.rb +16 -16
  194. data/lib/page-object/platforms/watir_webdriver/form.rb +16 -16
  195. data/lib/page-object/platforms/watir_webdriver/image.rb +22 -22
  196. data/lib/page-object/platforms/watir_webdriver/label.rb +17 -18
  197. data/lib/page-object/platforms/watir_webdriver/link.rb +15 -15
  198. data/lib/page-object/platforms/watir_webdriver/ordered_list.rb +35 -35
  199. data/lib/page-object/platforms/watir_webdriver/page_object.rb +1029 -1029
  200. data/lib/page-object/platforms/watir_webdriver/radio_button.rb +22 -22
  201. data/lib/page-object/platforms/watir_webdriver/select_list.rb +74 -74
  202. data/lib/page-object/platforms/watir_webdriver/table.rb +38 -38
  203. data/lib/page-object/platforms/watir_webdriver/table_row.rb +37 -37
  204. data/lib/page-object/platforms/watir_webdriver/text_area.rb +23 -23
  205. data/lib/page-object/platforms/watir_webdriver/text_field.rb +16 -16
  206. data/lib/page-object/platforms/watir_webdriver/unordered_list.rb +36 -36
  207. data/lib/page-object/version.rb +4 -4
  208. data/lib/page-object/widgets.rb +133 -133
  209. data/meeane-page-object.gemspec +32 -32
  210. data/spec/page-object/element_locators_spec.rb +1065 -1065
  211. data/spec/page-object/elements/area_spec.rb +45 -45
  212. data/spec/page-object/elements/button_spec.rb +50 -50
  213. data/spec/page-object/elements/canvas_spec.rb +40 -40
  214. data/spec/page-object/elements/check_box_spec.rb +49 -49
  215. data/spec/page-object/elements/div_spec.rb +28 -28
  216. data/spec/page-object/elements/element_spec.rb +114 -114
  217. data/spec/page-object/elements/file_field_spec.rb +39 -39
  218. data/spec/page-object/elements/form_spec.rb +28 -28
  219. data/spec/page-object/elements/heading_spec.rb +48 -48
  220. data/spec/page-object/elements/hidden_field_spec.rb +28 -28
  221. data/spec/page-object/elements/image_spec.rb +66 -66
  222. data/spec/page-object/elements/label_spec.rb +29 -29
  223. data/spec/page-object/elements/link_spec.rb +49 -49
  224. data/spec/page-object/elements/list_item_spec.rb +28 -28
  225. data/spec/page-object/elements/nested_element_spec.rb +254 -254
  226. data/spec/page-object/elements/option_spec.rb +11 -11
  227. data/spec/page-object/elements/ordered_list_spec.rb +94 -94
  228. data/spec/page-object/elements/paragraph_spec.rb +28 -28
  229. data/spec/page-object/elements/select_list_spec.rb +142 -142
  230. data/spec/page-object/elements/selenium/radio_button_spec.rb +44 -44
  231. data/spec/page-object/elements/selenium/text_field_spec.rb +49 -49
  232. data/spec/page-object/elements/selenium_element_spec.rb +172 -172
  233. data/spec/page-object/elements/span_spec.rb +26 -26
  234. data/spec/page-object/elements/table_cell_spec.rb +21 -21
  235. data/spec/page-object/elements/table_row_spec.rb +70 -70
  236. data/spec/page-object/elements/table_spec.rb +98 -98
  237. data/spec/page-object/elements/text_area_spec.rb +39 -39
  238. data/spec/page-object/elements/unordered_list_spec.rb +95 -95
  239. data/spec/page-object/elements/watir_element_spec.rb +142 -142
  240. data/spec/page-object/javascript_framework_facade_spec.rb +61 -61
  241. data/spec/page-object/loads_platform_spec.rb +53 -53
  242. data/spec/page-object/page-object_spec.rb +405 -405
  243. data/spec/page-object/page_factory_spec.rb +256 -256
  244. data/spec/page-object/page_populator_spec.rb +122 -122
  245. data/spec/page-object/platforms/selenium_webdriver/selenium_page_object_spec.rb +68 -68
  246. data/spec/page-object/platforms/selenium_webdriver_spec.rb +28 -28
  247. data/spec/page-object/platforms/watir_webdriver/watir_page_object_spec.rb +29 -29
  248. data/spec/page-object/platforms/watir_webdriver_spec.rb +9 -9
  249. data/spec/page-object/selenium_accessors_spec.rb +589 -589
  250. data/spec/page-object/watir_accessors_spec.rb +1107 -1107
  251. data/spec/page-object/widget_spec.rb +226 -226
  252. data/spec/spec_helper.rb +44 -44
  253. metadata +193 -43
@@ -1,45 +1,45 @@
1
- Feature: Hidden Fields
2
-
3
- Background:
4
- Given I am on the static elements page
5
-
6
- Scenario: Setting and getting a value from a hidden field
7
- When I retrieve the hidden field element
8
- Then I should see the hidden field contains "12345"
9
-
10
- Scenario Outline: Locating hidden fields on the Page
11
- When I search for the hidden field by "<search_by>"
12
- Then the hidden field element should contain "12345"
13
-
14
- Scenarios:
15
- | search_by |
16
- | id |
17
- | class |
18
- | name |
19
- | xpath |
20
- | index |
21
- | text |
22
- | value |
23
-
24
- @selenium_only
25
- Scenario Outline: Locating hidden fields on the Page
26
- When I search for the hidden field by "<search_by>"
27
- Then the hidden field element should contain "12345"
28
-
29
- Scenarios:
30
- | search_by |
31
- | css |
32
-
33
- Scenario Outline: Locating a hidden field using multiple parameters
34
- When I search for the hidden field by "<param1>" and "<param2>"
35
- Then the hidden field element should contain "12345"
36
-
37
- Scenarios:
38
- | param1 | param2 |
39
- | class | index |
40
- | name | index |
41
-
42
- Scenario: Finding a hidden field dynamically
43
- When I find a hidden field while the script is executing
44
- Then I should see that the hidden field exists
45
- And the hidden field element should contain "12345"
1
+ Feature: Hidden Fields
2
+
3
+ Background:
4
+ Given I am on the static elements page
5
+
6
+ Scenario: Setting and getting a value from a hidden field
7
+ When I retrieve the hidden field element
8
+ Then I should see the hidden field contains "12345"
9
+
10
+ Scenario Outline: Locating hidden fields on the Page
11
+ When I search for the hidden field by "<search_by>"
12
+ Then the hidden field element should contain "12345"
13
+
14
+ Scenarios:
15
+ | search_by |
16
+ | id |
17
+ | class |
18
+ | name |
19
+ | xpath |
20
+ | index |
21
+ | text |
22
+ | value |
23
+
24
+ @selenium_only
25
+ Scenario Outline: Locating hidden fields on the Page
26
+ When I search for the hidden field by "<search_by>"
27
+ Then the hidden field element should contain "12345"
28
+
29
+ Scenarios:
30
+ | search_by |
31
+ | css |
32
+
33
+ Scenario Outline: Locating a hidden field using multiple parameters
34
+ When I search for the hidden field by "<param1>" and "<param2>"
35
+ Then the hidden field element should contain "12345"
36
+
37
+ Scenarios:
38
+ | param1 | param2 |
39
+ | class | index |
40
+ | name | index |
41
+
42
+ Scenario: Finding a hidden field dynamically
43
+ When I find a hidden field while the script is executing
44
+ Then I should see that the hidden field exists
45
+ And the hidden field element should contain "12345"
@@ -1,36 +1,36 @@
1
- <html>
2
- <head>
3
- <title>Async Page</title>
4
- <script type="text/javascript">
5
- function unhide() {
6
- document.getElementById("target").style.display="block";
7
- }
8
-
9
- function hide() {
10
- document.getElementById("target").style.display="none";
11
- }
12
-
13
- function addDiv() {
14
- var button = document.createElement("input");
15
- button.setAttribute("type", "button");
16
- button.setAttribute("value", "New Button");
17
- button.setAttribute("id", "new_button");
18
- document.body.appendChild(button);
19
- }
20
-
21
- function removeDiv() {
22
- var button = document.getElementById("new_button");
23
- document.body.removeChild(button);
24
- }
25
- </script>
26
- </head>
27
- <body>
28
- <input type="button" id="target" value="Target"/>
29
- <input type="button" onclick="setTimeout(function() {hide();}, 2000);" value="Hide Button"/>
30
- <input type="button" onclick="setTimeout(function() {unhide();}, 2000);" value="Unhide Button"/>
31
- <input type="button" onclick="setTimeout(function() {addDiv();}, 2000);" value="Create Button"/>
32
- <input type="button" onclick="setTimeout(function() {removeDiv();}, 2000);" value="Remove Button"/>
33
- </body>
34
- </html>
35
-
36
-
1
+ <html>
2
+ <head>
3
+ <title>Async Page</title>
4
+ <script type="text/javascript">
5
+ function unhide() {
6
+ document.getElementById("target").style.display="block";
7
+ }
8
+
9
+ function hide() {
10
+ document.getElementById("target").style.display="none";
11
+ }
12
+
13
+ function addDiv() {
14
+ var button = document.createElement("input");
15
+ button.setAttribute("type", "button");
16
+ button.setAttribute("value", "New Button");
17
+ button.setAttribute("id", "new_button");
18
+ document.body.appendChild(button);
19
+ }
20
+
21
+ function removeDiv() {
22
+ var button = document.getElementById("new_button");
23
+ document.body.removeChild(button);
24
+ }
25
+ </script>
26
+ </head>
27
+ <body>
28
+ <input type="button" id="target" value="Target"/>
29
+ <input type="button" onclick="setTimeout(function() {hide();}, 2000);" value="Hide Button"/>
30
+ <input type="button" onclick="setTimeout(function() {unhide();}, 2000);" value="Unhide Button"/>
31
+ <input type="button" onclick="setTimeout(function() {addDiv();}, 2000);" value="Create Button"/>
32
+ <input type="button" onclick="setTimeout(function() {removeDiv();}, 2000);" value="Remove Button"/>
33
+ </body>
34
+ </html>
35
+
36
+
@@ -1,13 +1,13 @@
1
- <html>
2
- <body>
3
- <button ondblclick="change_text()">Double Click</button>
4
- <p id="change_on_double_click">The double click has not occurred.</p>
5
- </body>
6
-
7
- <script>
8
- function change_text()
9
- {
10
- document.getElementById("change_on_double_click").innerHTML="Double Click Received"
11
- }
12
- </script>
1
+ <html>
2
+ <body>
3
+ <button ondblclick="change_text()">Double Click</button>
4
+ <p id="change_on_double_click">The double click has not occurred.</p>
5
+ </body>
6
+
7
+ <script>
8
+ function change_text()
9
+ {
10
+ document.getElementById("change_on_double_click").innerHTML="Double Click Received"
11
+ }
12
+ </script>
13
13
  </html>
@@ -1,8 +1,8 @@
1
- <html>
2
- <head>
3
- <title>Failure</title>
4
- </head>
5
- <body>
6
- <h1>Failure</h1>
7
- </body>
1
+ <html>
2
+ <head>
3
+ <title>Failure</title>
4
+ </head>
5
+ <body>
6
+ <h1>Failure</h1>
7
+ </body>
8
8
  </html>
@@ -1,18 +1,18 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3
- <head>
4
- <title>Frame 1</title>
5
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
- </head>
7
- <body onload="document.senderForm.senderElement.focus()">
8
- <h1>Frame 1</h1>
9
- <p>Nam accumsan. Donec nisi pede, interdum eget, ultrices ac, vulputate vitae, nunc. Nulla lorem. Duis cursus pharetra dolor. Nulla accumsan hendrerit leo. Vivamus commodo. Nullam dignissim adipiscing est. Aliquam vitae orci in risus lobortis luctus. Ut luctus fermentum ligula. Nullam ipsum. Suspendisse sit amet nisi.</p>
10
- <form action="" method="post" name="senderForm">
11
- <fieldset>
12
- <input type="text" name="senderElement" id="senderElement" value="send_this_value" />
13
- <input type="button" id="send" onclick="parent.frame2.document.recieverForm.recieverElement.value = document.senderForm.senderElement.value" value="Send!" />
14
- </fieldset>
15
- </form>
16
- <div id="set_by_js" />
17
- </body>
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3
+ <head>
4
+ <title>Frame 1</title>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ </head>
7
+ <body onload="document.senderForm.senderElement.focus()">
8
+ <h1>Frame 1</h1>
9
+ <p>Nam accumsan. Donec nisi pede, interdum eget, ultrices ac, vulputate vitae, nunc. Nulla lorem. Duis cursus pharetra dolor. Nulla accumsan hendrerit leo. Vivamus commodo. Nullam dignissim adipiscing est. Aliquam vitae orci in risus lobortis luctus. Ut luctus fermentum ligula. Nullam ipsum. Suspendisse sit amet nisi.</p>
10
+ <form action="" method="post" name="senderForm">
11
+ <fieldset>
12
+ <input type="text" name="senderElement" id="senderElement" value="send_this_value" />
13
+ <input type="button" id="send" onclick="parent.frame2.document.recieverForm.recieverElement.value = document.senderForm.senderElement.value" value="Send!" />
14
+ </fieldset>
15
+ </form>
16
+ <div id="set_by_js" />
17
+ </body>
18
18
  </html>
@@ -1,16 +1,16 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3
- <head>
4
- <title>Frame 2</title>
5
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
- </head>
7
- <body>
8
- <h1>Frame 2</h1>
9
- <p>Vestibulum dignissim mauris id tellus. Nulla volutpat bibendum ante. Nam malesuada, lacus vel ultrices luctus, lorem purus tristique magna, quis pharetra leo ipsum nec neque. Cras ornare tincidunt sem. In hac habitasse platea dictumst. Suspendisse commodo turpis at est. Sed quis tortor. Aenean non massa. Phasellus scelerisque nulla vel lectus. Quisque lorem. Praesent volutpat dignissim risus. Fusce vulputate ligula eu ipsum.</p>
10
- <form action="" method="post" name="recieverForm">
11
- <fieldset>
12
- <input type="text" name="recieverElement" value="old_value" />
13
- </fieldset>
14
- </form>
15
- </body>
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3
+ <head>
4
+ <title>Frame 2</title>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ </head>
7
+ <body>
8
+ <h1>Frame 2</h1>
9
+ <p>Vestibulum dignissim mauris id tellus. Nulla volutpat bibendum ante. Nam malesuada, lacus vel ultrices luctus, lorem purus tristique magna, quis pharetra leo ipsum nec neque. Cras ornare tincidunt sem. In hac habitasse platea dictumst. Suspendisse commodo turpis at est. Sed quis tortor. Aenean non massa. Phasellus scelerisque nulla vel lectus. Quisque lorem. Praesent volutpat dignissim risus. Fusce vulputate ligula eu ipsum.</p>
10
+ <form action="" method="post" name="recieverForm">
11
+ <fieldset>
12
+ <input type="text" name="recieverElement" value="old_value" />
13
+ </fieldset>
14
+ </form>
15
+ </body>
16
16
  </html>
@@ -1,14 +1,14 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3
- <head>
4
- <title>Frame 1</title>
5
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
- </head>
7
- <body>
8
- <h1>Frame 3</h1>
9
- <p>Nam accumsan. Donec nisi pede, interdum eget, ultrices ac, vulputate vitae, nunc. Nulla lorem. Duis cursus pharetra dolor. Nulla accumsan hendrerit leo. Vivamus commodo. Nullam dignissim adipiscing est. Aliquam vitae orci in risus lobortis luctus. Ut luctus fermentum ligula. Nullam ipsum. Suspendisse sit amet nisi.</p>
10
- <input id=alert_button type=button onclick="alert('I am an alert')" value=Alert>
11
- <input id=confirm_button type=button onclick="this.value = confirm('set the value')" value=Confirm>
12
- <input id=prompt_button type=button onclick='this.value = prompt("enter your name", "John Doe")' value=Prompt>
13
- </body>
14
- </html>
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3
+ <head>
4
+ <title>Frame 1</title>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ </head>
7
+ <body>
8
+ <h1>Frame 3</h1>
9
+ <p>Nam accumsan. Donec nisi pede, interdum eget, ultrices ac, vulputate vitae, nunc. Nulla lorem. Duis cursus pharetra dolor. Nulla accumsan hendrerit leo. Vivamus commodo. Nullam dignissim adipiscing est. Aliquam vitae orci in risus lobortis luctus. Ut luctus fermentum ligula. Nullam ipsum. Suspendisse sit amet nisi.</p>
10
+ <input id=alert_button type=button onclick="alert('I am an alert')" value=Alert>
11
+ <input id=confirm_button type=button onclick="this.value = confirm('set the value')" value=Confirm>
12
+ <input id=prompt_button type=button onclick='this.value = prompt("enter your name", "John Doe")' value=Prompt>
13
+ </body>
14
+ </html>
@@ -1,12 +1,12 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3
- <head>
4
- <title>Frames</title>
5
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
- </head>
7
- <frameset cols="40%, 40%, 20%">
8
- <frame src="frame_1.html" id="frame_one_1" name="frame1"/>
9
- <frame src="frame_2.html" id="frame_two_2" name="frame2"/>
10
- <frame src="frame_3.html" id="frame_three_3" name="frame3"/>
11
- </frameset>
12
- </html>
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3
+ <head>
4
+ <title>Frames</title>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ </head>
7
+ <frameset cols="40%, 40%, 20%">
8
+ <frame src="frame_1.html" id="frame_one_1" name="frame1"/>
9
+ <frame src="frame_2.html" id="frame_two_2" name="frame2"/>
10
+ <frame src="frame_3.html" id="frame_three_3" name="frame3"/>
11
+ </frameset>
12
+ </html>
@@ -1,12 +1,12 @@
1
- <html>
2
- <head>
3
- <style type="text/css" media="screen">
4
- a { font-size: 10px; }
5
- a:hover { font-size: 20px; }
6
- </style>
7
- </head>
8
-
9
- <body>
10
- <a href="#">hello</a>
11
- </body>
1
+ <html>
2
+ <head>
3
+ <style type="text/css" media="screen">
4
+ a { font-size: 10px; }
5
+ a:hover { font-size: 20px; }
6
+ </style>
7
+ </head>
8
+
9
+ <body>
10
+ <a href="#">hello</a>
11
+ </body>
12
12
  </html>
@@ -1,12 +1,12 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3
- <head>
4
- <title>Iframes</title>
5
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
- </head>
7
- <body>
8
- <h1>Iframes</h1>
9
- <iframe src="frame_1.html" id="frame_one_1" name="frame1" class="iframe"></iframe>
10
- <iframe src="frame_2.html" id="frame_two_2" name="frame2" class="iframe"></iframe>
11
- </body>
12
- </html>
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3
+ <head>
4
+ <title>Iframes</title>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ </head>
7
+ <body>
8
+ <h1>Iframes</h1>
9
+ <iframe src="frame_1.html" id="frame_one_1" name="frame1" class="iframe"></iframe>
10
+ <iframe src="frame_2.html" id="frame_two_2" name="frame2" class="iframe"></iframe>
11
+ </body>
12
+ </html>
@@ -1,52 +1,52 @@
1
- <html>
2
- <head>
3
- <title>Indexed Property Page</title>
4
- </head>
5
- <body>
6
- <form method="get" action="success.html">
7
- <table id="table_id" name align="table_name" class="table_class" border="1">
8
- <tr>
9
- <td><input type="text" id="table[123].text" name="tableName[123].text" size="20"/></td>
10
- <td><input type="radio" id="table[123].radio" value="123"/></td>
11
- <td><input type="checkbox" id="table[123].check" value="1"/></td>
12
- <td><textarea id="table[123].area" rows="2" cols="20"></textarea></td>
13
- <td><input id="table[123].button" type="submit" value="Click 123"/></td>
14
- <td><div id="table[123].content">123!</div></td>
15
- </tr>
16
- <tr>
17
- <td><input type="text" id="table[foo].text" name="tableName[foo].text" size="20"/></td>
18
- <td><input type="radio" id="table[foo].radio" value="foo"/></td>
19
- <td><input type="checkbox" id="table[foo].check" value="2"/></td>
20
- <td><textarea id="table[foo].area" rows="2" cols="20"></textarea></td>
21
- <td><input id="table[foo].button" type="submit" value="Click foo"/></td>
22
- <td><div id="table[foo].content">foo!</div></td>
23
- </tr>
24
- <tr>
25
- <td><input type="text" id="table[12test].text" name="tableName[12test].text" size="20"/></td>
26
- <td><input type="radio" id="table[12test].radio" value="12test"/></td>
27
- <td><input type="checkbox" id="table[12test].check" value="3"/></td>
28
- <td><textarea id="table[12test].area" rows="2" cols="20"></textarea></td>
29
- <td><input id="table[12test].button" type="submit" value="Click 12test"/></td>
30
- <td><div id="table[12test].content">12test!</div></td>
31
- </tr>
32
- </table>
33
-
34
- <table id="other_table_id" name align="table_name" class="table_class" border="1">
35
- <tr>
36
- <td><input type="text" id="other_table[foo].text" name="otherTableName[foo].text" size="20"/></td>
37
- <td><div id="other_table[foo].content">foo2!</div></td>
38
- </tr>
39
- <tr>
40
- <td><input type="text" id="other_table[bar].text" name="otherTableName[bar].text" size="20"/></td>
41
- <td><div id="other_table[bar].content">bar!</div></td>
42
- </tr>
43
- </table>
44
-
45
- <div>
46
- <input type="text" id="nottable[123].text" size="20"/><br/>
47
- <input type="text" id="nottable[foo].text" size="20"/><br/>
48
- <input type="text" id="nottable[12test].text" size="20"/>
49
- </div>
50
- </form>
51
- </body>
1
+ <html>
2
+ <head>
3
+ <title>Indexed Property Page</title>
4
+ </head>
5
+ <body>
6
+ <form method="get" action="success.html">
7
+ <table id="table_id" name align="table_name" class="table_class" border="1">
8
+ <tr>
9
+ <td><input type="text" id="table[123].text" name="tableName[123].text" size="20"/></td>
10
+ <td><input type="radio" id="table[123].radio" value="123"/></td>
11
+ <td><input type="checkbox" id="table[123].check" value="1"/></td>
12
+ <td><textarea id="table[123].area" rows="2" cols="20"></textarea></td>
13
+ <td><input id="table[123].button" type="submit" value="Click 123"/></td>
14
+ <td><div id="table[123].content">123!</div></td>
15
+ </tr>
16
+ <tr>
17
+ <td><input type="text" id="table[foo].text" name="tableName[foo].text" size="20"/></td>
18
+ <td><input type="radio" id="table[foo].radio" value="foo"/></td>
19
+ <td><input type="checkbox" id="table[foo].check" value="2"/></td>
20
+ <td><textarea id="table[foo].area" rows="2" cols="20"></textarea></td>
21
+ <td><input id="table[foo].button" type="submit" value="Click foo"/></td>
22
+ <td><div id="table[foo].content">foo!</div></td>
23
+ </tr>
24
+ <tr>
25
+ <td><input type="text" id="table[12test].text" name="tableName[12test].text" size="20"/></td>
26
+ <td><input type="radio" id="table[12test].radio" value="12test"/></td>
27
+ <td><input type="checkbox" id="table[12test].check" value="3"/></td>
28
+ <td><textarea id="table[12test].area" rows="2" cols="20"></textarea></td>
29
+ <td><input id="table[12test].button" type="submit" value="Click 12test"/></td>
30
+ <td><div id="table[12test].content">12test!</div></td>
31
+ </tr>
32
+ </table>
33
+
34
+ <table id="other_table_id" name align="table_name" class="table_class" border="1">
35
+ <tr>
36
+ <td><input type="text" id="other_table[foo].text" name="otherTableName[foo].text" size="20"/></td>
37
+ <td><div id="other_table[foo].content">foo2!</div></td>
38
+ </tr>
39
+ <tr>
40
+ <td><input type="text" id="other_table[bar].text" name="otherTableName[bar].text" size="20"/></td>
41
+ <td><div id="other_table[bar].content">bar!</div></td>
42
+ </tr>
43
+ </table>
44
+
45
+ <div>
46
+ <input type="text" id="nottable[123].text" size="20"/><br/>
47
+ <input type="text" id="nottable[foo].text" size="20"/><br/>
48
+ <input type="text" id="nottable[12test].text" size="20"/>
49
+ </div>
50
+ </form>
51
+ </body>
52
52
  </html>