envjs19 0.3.8.20101029121421

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (279) hide show
  1. data/.jslintrbrc +30 -0
  2. data/.project +17 -0
  3. data/CHANGELOG.rdoc +57 -0
  4. data/DTD/xhtml-lat1.ent +196 -0
  5. data/DTD/xhtml-special.ent +80 -0
  6. data/DTD/xhtml-symbol.ent +237 -0
  7. data/DTD/xhtml.soc +14 -0
  8. data/DTD/xhtml1-frameset.dtd +1235 -0
  9. data/DTD/xhtml1-strict.dtd +978 -0
  10. data/DTD/xhtml1-transitional.dtd +1201 -0
  11. data/DTD/xhtml1.dcl +192 -0
  12. data/Makefile +7 -0
  13. data/Manifest.txt +280 -0
  14. data/README.rdoc +65 -0
  15. data/Rakefile +196 -0
  16. data/Wakefile +11 -0
  17. data/bin/envjsrb +257 -0
  18. data/build.properties +9 -0
  19. data/build.xml +247 -0
  20. data/gm/jquery.js +6002 -0
  21. data/gm/mainx.js +2648 -0
  22. data/gm/sensx.js +135 -0
  23. data/gm/t.js +6 -0
  24. data/gm/x.html +76 -0
  25. data/htmlparser/BrowserTreeBuilder.java +456 -0
  26. data/htmlparser/README +34 -0
  27. data/htmlparser/build.sh +38 -0
  28. data/jsl/jsl +0 -0
  29. data/jsl/jsl.default.conf +129 -0
  30. data/jsl/jsl.exe +0 -0
  31. data/lib/envjs.rb +35 -0
  32. data/lib/envjs/event_loop.js +206 -0
  33. data/lib/envjs/net.rb +3 -0
  34. data/lib/envjs/net/cgi.rb +94 -0
  35. data/lib/envjs/net/file.rb +69 -0
  36. data/lib/envjs/options.rb +11 -0
  37. data/lib/envjs/runtime.rb +346 -0
  38. data/lib/envjs/tempfile.rb +24 -0
  39. data/licenses/GPL-LICENSE.txt +278 -0
  40. data/licenses/MIT-LICENSE.txt +20 -0
  41. data/src/base64.js +80 -0
  42. data/src/build.js +6 -0
  43. data/src/cruft/bad.html +24 -0
  44. data/src/cruft/dom.js +606 -0
  45. data/src/cruft/element.js +297 -0
  46. data/src/cruft/good.html +30 -0
  47. data/src/cruft/good.js +32 -0
  48. data/src/cruft/internal.js +81 -0
  49. data/src/cruft/parser.js +458 -0
  50. data/src/css/properties.js +293 -0
  51. data/src/css/rule.js +22 -0
  52. data/src/css/sizzle.js +717 -0
  53. data/src/css/stylesheet.js +52 -0
  54. data/src/dom/attr.js +55 -0
  55. data/src/dom/cdatasection.js +31 -0
  56. data/src/dom/characterdata.js +119 -0
  57. data/src/dom/comment.js +30 -0
  58. data/src/dom/doctype.js +9 -0
  59. data/src/dom/document.js +1023 -0
  60. data/src/dom/dom.js +134 -0
  61. data/src/dom/element.js +217 -0
  62. data/src/dom/entities.js +273 -0
  63. data/src/dom/exception.js +28 -0
  64. data/src/dom/fragment.js +37 -0
  65. data/src/dom/implementation.js +140 -0
  66. data/src/dom/instruction.js +51 -0
  67. data/src/dom/namednodemap.js +374 -0
  68. data/src/dom/namespace.js +50 -0
  69. data/src/dom/node.js +618 -0
  70. data/src/dom/nodelist.js +195 -0
  71. data/src/dom/parser.js +1207 -0
  72. data/src/dom/text.js +73 -0
  73. data/src/event/event.js +47 -0
  74. data/src/event/mouseevent.js +4 -0
  75. data/src/event/uievent.js +8 -0
  76. data/src/html/a.js +110 -0
  77. data/src/html/anchor.js +80 -0
  78. data/src/html/area.js +57 -0
  79. data/src/html/base.js +26 -0
  80. data/src/html/blockquote-q.js +19 -0
  81. data/src/html/body.js +19 -0
  82. data/src/html/button.js +21 -0
  83. data/src/html/canvas.js +14 -0
  84. data/src/html/col-colgroup.js +49 -0
  85. data/src/html/collection.js +72 -0
  86. data/src/html/cookie.js +153 -0
  87. data/src/html/del-ins.js +25 -0
  88. data/src/html/div.js +28 -0
  89. data/src/html/document.js +364 -0
  90. data/src/html/element.js +382 -0
  91. data/src/html/fieldset.js +19 -0
  92. data/src/html/form.js +484 -0
  93. data/src/html/frame.js +89 -0
  94. data/src/html/frameset.js +25 -0
  95. data/src/html/head.js +44 -0
  96. data/src/html/html.js +0 -0
  97. data/src/html/htmlparser.js +340 -0
  98. data/src/html/iframe.js +26 -0
  99. data/src/html/image.js +0 -0
  100. data/src/html/img.js +62 -0
  101. data/src/html/input-elements.js +307 -0
  102. data/src/html/input.js +65 -0
  103. data/src/html/label.js +26 -0
  104. data/src/html/legend.js +19 -0
  105. data/src/html/link.js +82 -0
  106. data/src/html/map.js +22 -0
  107. data/src/html/meta.js +37 -0
  108. data/src/html/object.js +89 -0
  109. data/src/html/optgroup.js +25 -0
  110. data/src/html/option.js +103 -0
  111. data/src/html/param.js +38 -0
  112. data/src/html/script.js +122 -0
  113. data/src/html/select.js +132 -0
  114. data/src/html/style.js +31 -0
  115. data/src/html/table.js +199 -0
  116. data/src/html/tbody-thead-tfoot.js +92 -0
  117. data/src/html/td-th.js +18 -0
  118. data/src/html/textarea.js +31 -0
  119. data/src/html/title.js +20 -0
  120. data/src/html/tr.js +114 -0
  121. data/src/intro.js +141 -0
  122. data/src/outro.js +70 -0
  123. data/src/parser/html5.detailed.js +10762 -0
  124. data/src/parser/html5.min.js +503 -0
  125. data/src/parser/html5.pretty.js +10815 -0
  126. data/src/parser/intro.js +42 -0
  127. data/src/parser/outro.js +9 -0
  128. data/src/platform/core.js +323 -0
  129. data/src/platform/johnson.js +484 -0
  130. data/src/platform/rhino.js +327 -0
  131. data/src/platform/static/intro.js +41 -0
  132. data/src/platform/static/outro.js +30 -0
  133. data/src/profile/aop.js +238 -0
  134. data/src/profile/profile.js +402 -0
  135. data/src/serializer/xml.js +21 -0
  136. data/src/svg/animatedstring.js +25 -0
  137. data/src/svg/document.js +25 -0
  138. data/src/svg/element.js +22 -0
  139. data/src/svg/locatable.js +17 -0
  140. data/src/svg/rect.js +18 -0
  141. data/src/svg/rectelement.js +24 -0
  142. data/src/svg/stylable.js +49 -0
  143. data/src/svg/svgelement.js +22 -0
  144. data/src/svg/transformable.js +15 -0
  145. data/src/window/css.js +15 -0
  146. data/src/window/dialog.js +16 -0
  147. data/src/window/document.js +28 -0
  148. data/src/window/event.js +265 -0
  149. data/src/window/history.js +62 -0
  150. data/src/window/location.js +156 -0
  151. data/src/window/navigator.js +48 -0
  152. data/src/window/screen.js +53 -0
  153. data/src/window/timer.js +21 -0
  154. data/src/window/window.js +284 -0
  155. data/src/window/xhr.js +135 -0
  156. data/src/xpath/expression.js +49 -0
  157. data/src/xpath/implementation.js +2505 -0
  158. data/src/xpath/result.js +67 -0
  159. data/src/xpath/util.js +551 -0
  160. data/src/xpath/xmltoken.js +149 -0
  161. data/src/xslt/COPYING +34 -0
  162. data/src/xslt/ajaxslt-0.8.1/AUTHORS +1 -0
  163. data/src/xslt/ajaxslt-0.8.1/ChangeLog +136 -0
  164. data/src/xslt/ajaxslt-0.8.1/Makefile +49 -0
  165. data/src/xslt/ajaxslt-0.8.1/README +102 -0
  166. data/src/xslt/ajaxslt-0.8.1/TODO +15 -0
  167. data/src/xslt/ajaxslt-0.8.1/dom.js +566 -0
  168. data/src/xslt/ajaxslt-0.8.1/dom_unittest.html +24 -0
  169. data/src/xslt/ajaxslt-0.8.1/dom_unittest.js +131 -0
  170. data/src/xslt/ajaxslt-0.8.1/simplelog.js +79 -0
  171. data/src/xslt/ajaxslt-0.8.1/test/xpath.html +18 -0
  172. data/src/xslt/ajaxslt-0.8.1/test/xpath_script.js +45 -0
  173. data/src/xslt/ajaxslt-0.8.1/test/xslt.html +58 -0
  174. data/src/xslt/ajaxslt-0.8.1/test/xslt_script.js +33 -0
  175. data/src/xslt/ajaxslt-0.8.1/unittestsuite.html +26 -0
  176. data/src/xslt/ajaxslt-0.8.1/xmltoken.js +149 -0
  177. data/src/xslt/ajaxslt-0.8.1/xmltoken_unittest.html +18 -0
  178. data/src/xslt/ajaxslt-0.8.1/xmltoken_unittest.js +811 -0
  179. data/src/xslt/ajaxslt-0.8.1/xpath_unittest.html +39 -0
  180. data/src/xslt/ajaxslt-0.8.1/xpath_unittest.js +557 -0
  181. data/src/xslt/ajaxslt-0.8.1/xpathdebug.js +234 -0
  182. data/src/xslt/ajaxslt-0.8.1/xslt_unittest.html +138 -0
  183. data/src/xslt/ajaxslt-0.8.1/xslt_unittest.js +68 -0
  184. data/src/xslt/implementation.js +625 -0
  185. data/src/xslt/processor.js +37 -0
  186. data/src/xslt/util.js +449 -0
  187. data/test/base64.js +80 -0
  188. data/test/call-load-test.js +15 -0
  189. data/test/data.js +45 -0
  190. data/test/debug.js +53 -0
  191. data/test/firebug/errorIcon.png +0 -0
  192. data/test/firebug/firebug.css +209 -0
  193. data/test/firebug/firebug.html +23 -0
  194. data/test/firebug/firebug.js +672 -0
  195. data/test/firebug/firebugx.js +10 -0
  196. data/test/firebug/infoIcon.png +0 -0
  197. data/test/firebug/warningIcon.png +0 -0
  198. data/test/fixtures/html/events.html +171 -0
  199. data/test/fixtures/html/iframe1.html +46 -0
  200. data/test/fixtures/html/iframe1a.html +46 -0
  201. data/test/fixtures/html/iframe2.html +45 -0
  202. data/test/fixtures/html/iframe3.html +28 -0
  203. data/test/fixtures/html/iframeN.html +57 -0
  204. data/test/fixtures/html/malformed.html +181 -0
  205. data/test/fixtures/html/scope.html +81 -0
  206. data/test/fixtures/html/trivial.html +19 -0
  207. data/test/fixtures/html/with_js.html +26 -0
  208. data/test/fixtures/images/icon-blue.png +0 -0
  209. data/test/fixtures/js/external_script.js +1 -0
  210. data/test/fixtures/js/script.js +1 -0
  211. data/test/fixtures/js/script_error.js +2 -0
  212. data/test/foo.html +8 -0
  213. data/test/foo.js +40 -0
  214. data/test/html/events.html +171 -0
  215. data/test/html/iframe1.html +46 -0
  216. data/test/html/iframe1a.html +46 -0
  217. data/test/html/iframe2.html +45 -0
  218. data/test/html/iframe3.html +30 -0
  219. data/test/html/iframeN.html +57 -0
  220. data/test/html/malformed.html +181 -0
  221. data/test/html/scope.html +87 -0
  222. data/test/html/script.js +1 -0
  223. data/test/html/trivial.html +19 -0
  224. data/test/html/with_js.html +26 -0
  225. data/test/index.html +328 -0
  226. data/test/java-prototype.js +9 -0
  227. data/test/jquery.js +6002 -0
  228. data/test/primary-tests.js +26 -0
  229. data/test/prototype-test.js +13 -0
  230. data/test/qunit.js +61 -0
  231. data/test/qunit/qunit/qunit.css +17 -0
  232. data/test/qunit/qunit/qunit.js +997 -0
  233. data/test/scope.html +19 -0
  234. data/test/scope.rb +24 -0
  235. data/test/smp/dmathieu/index.html +8 -0
  236. data/test/specs/dist/env.spec.js +1534 -0
  237. data/test/specs/envjs.spec.css +46 -0
  238. data/test/specs/parser/html.js +31 -0
  239. data/test/specs/parser/spec.html +40 -0
  240. data/test/specs/parser/xml.js +31 -0
  241. data/test/specs/qunit.bdd.js +210 -0
  242. data/test/specs/qunit.css +17 -0
  243. data/test/specs/qunit.js +997 -0
  244. data/test/specs/template/spec-0.js +31 -0
  245. data/test/specs/template/spec-1.js +31 -0
  246. data/test/specs/template/spec.html +40 -0
  247. data/test/specs/window/css.js +23 -0
  248. data/test/specs/window/dialog.js +25 -0
  249. data/test/specs/window/document.js +23 -0
  250. data/test/specs/window/event.js +25 -0
  251. data/test/specs/window/history.js +34 -0
  252. data/test/specs/window/location.js +34 -0
  253. data/test/specs/window/navigator.js +71 -0
  254. data/test/specs/window/screen.js +42 -0
  255. data/test/specs/window/spec.html +48 -0
  256. data/test/specs/window/timer.js +26 -0
  257. data/test/specs/window/window.js +53 -0
  258. data/test/specs/xhr/spec.html +47 -0
  259. data/test/specs/xhr/xhr.js +31 -0
  260. data/test/test.js +10 -0
  261. data/test/unit/dom.js +44 -0
  262. data/test/unit/elementmembers.js +92 -0
  263. data/test/unit/events.js +195 -0
  264. data/test/unit/fixtures/external_script.js +1 -0
  265. data/test/unit/form.js +40 -0
  266. data/test/unit/iframe.js +234 -0
  267. data/test/unit/insertion.js +23 -0
  268. data/test/unit/multi-window.js +212 -0
  269. data/test/unit/nu.validator.js +34 -0
  270. data/test/unit/onload.js +90 -0
  271. data/test/unit/parser.js +122 -0
  272. data/test/unit/prototypecompat.js +22 -0
  273. data/test/unit/proxy.js +6 -0
  274. data/test/unit/scope.js +209 -0
  275. data/test/unit/timer.js +115 -0
  276. data/test/unit/window.js +57 -0
  277. data/test/x.js +1 -0
  278. data/test/y.js +1 -0
  279. metadata +367 -0
@@ -0,0 +1,10 @@
1
+
2
+ if (!("console" in window) || !("firebug" in console))
3
+ {
4
+ var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
5
+ "group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
6
+
7
+ window.console = {};
8
+ for (var i = 0; i < names.length; ++i)
9
+ window.console[names[i]] = function() {}
10
+ }
Binary file
Binary file
@@ -0,0 +1,171 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+
3
+ <!--
4
+ * This file is a component of env.js,
5
+ * http://github.com/gleneivey/env-js/commits/master/README
6
+ * a Pure JavaScript Browser Environment
7
+ * Copyright 2009 John Resig, licensed under the MIT License
8
+ * http://www.opensource.org/licenses/mit-license.php
9
+ -->
10
+
11
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
12
+ lang="en" dir="ltr" id="html">
13
+ <head>
14
+ <title>IFRAME content page, env.js unit tests, deeply-nested structure
15
+ </title>
16
+
17
+ <script>
18
+ // define event handlers for following HTML structure
19
+
20
+ window.initECounters = function (counterObj){
21
+ counterObj["window onload"] = 0;
22
+ counterObj["window onunload"] = 0;
23
+ counterObj["body onload"] = 0;
24
+ counterObj["body onclick"] = 0;
25
+ counterObj["body onunload"] = 0;
26
+ counterObj["h1 onclick"] = 0;
27
+ counterObj["h2 onclick"] = 0;
28
+ counterObj["div onclick"] = 0;
29
+ counterObj["table onclick"] = 0;
30
+ counterObj["tbody onclick"] = 0;
31
+ counterObj["tr onclick"] = 0;
32
+ counterObj["td onclick"] = 0;
33
+ counterObj["ul onclick"] = 0;
34
+ counterObj["li onclick"] = 0;
35
+ counterObj["p onclick"] = 0;
36
+ counterObj["b onclick"] = 0;
37
+ counterObj["i onclick"] = 0;
38
+ counterObj["a onclick"] = 0;
39
+ counterObj["img onclick"] = 0;
40
+ counterObj["img onload"] = 0;
41
+ }
42
+
43
+ // init only first time this page loads, re-init'ed in unit/events.js
44
+ try {
45
+ if (!(window.top.eCounters)){
46
+ window.top.eCounters = {};
47
+ initECounters(window.top.eCounters);
48
+ }
49
+ } catch(e){
50
+ window.top.eCounters = {};
51
+ initECounters(window.top.eCounters);
52
+ }
53
+
54
+ function bodyOnloadHandler(elem){
55
+ if (elem === document.getElementById('theBODY'))
56
+ window.top.eCounters["body onload"] += 1;
57
+ }
58
+ function bodyOnclickHandler(elem){
59
+ if (elem === document.getElementById('theBODY'))
60
+ window.top.eCounters["body onclick"] += 1;
61
+ }
62
+ function bodyOnunloadHandler(elem){
63
+ if (elem === document.getElementById('theBODY'))
64
+ window.top.eCounters["body onunload"] += 1;
65
+ }
66
+ function h1OnclickHandler(elem){
67
+ if (elem === document.getElementById('theH1'))
68
+ window.top.eCounters["h1 onclick"] += 1;
69
+ }
70
+ function h2OnclickHandler(elem){
71
+ if (elem === document.getElementById('theH2'))
72
+ window.top.eCounters["h2 onclick"] += 1;
73
+ }
74
+ function divOnclickHandler(elem){
75
+ if (elem === document.getElementById('theDIV'))
76
+ window.top.eCounters["div onclick"] += 1;
77
+ }
78
+ function tableOnclickHandler(elem){
79
+ if (elem === document.getElementById('theTABLE'))
80
+ window.top.eCounters["table onclick"] += 1;
81
+ }
82
+ function tbodyOnclickHandler(elem){
83
+ if (elem === document.getElementById('theTBODY'))
84
+ window.top.eCounters["tbody onclick"] += 1;
85
+ }
86
+ function trOnclickHandler(elem){
87
+ if (elem === document.getElementById('theTR'))
88
+ window.top.eCounters["tr onclick"] += 1;
89
+ }
90
+ function tdOnclickHandler(elem){
91
+ if (elem === document.getElementById('theTD'))
92
+ window.top.eCounters["td onclick"] += 1;
93
+ }
94
+ function ulOnclickHandler(elem){
95
+ if (elem === document.getElementById('theUL'))
96
+ window.top.eCounters["ul onclick"] += 1;
97
+ }
98
+ function liOnclickHandler(elem){
99
+ if (elem === document.getElementById('theLI'))
100
+ window.top.eCounters["li onclick"] += 1;
101
+ }
102
+ function pOnclickHandler(elem){
103
+ if (elem === document.getElementById('theP'))
104
+ window.top.eCounters["p onclick"] += 1;
105
+ }
106
+ function bOnclickHandler(elem){
107
+ if (elem === document.getElementById('theB'))
108
+ window.top.eCounters["b onclick"] += 1;
109
+ }
110
+ function iOnclickHandler(elem){
111
+ if (elem === document.getElementById('theI'))
112
+ window.top.eCounters["i onclick"] += 1;
113
+ }
114
+ function aOnclickHandler(elem){
115
+ if (elem === document.getElementById('theA'))
116
+ window.top.eCounters["a onclick"] += 1;
117
+ }
118
+ function imgOnclickHandler(elem){
119
+ if (elem === document.getElementById('theIMG'))
120
+ window.top.eCounters["img onclick"] += 1;
121
+ }
122
+ function imgOnloadHandler(elem){
123
+ if (elem === document.getElementById('theIMG'))
124
+ window.top.eCounters["img onload"] += 1;
125
+ }
126
+
127
+ window.onload = function(){
128
+ window.top.eCounters["window onload"] += 1;
129
+ }
130
+
131
+ window.onunload = function(){
132
+ window.top.eCounters["window onunload"] += 1;
133
+ }
134
+ </script>
135
+
136
+ </head>
137
+ <body id="theBODY" onload="bodyOnloadHandler(this);"
138
+ onclick="bodyOnclickHandler(this);"
139
+ onunload="bodyOnunloadHandler(this);">
140
+ <h1 id="theH1" onclick="h1OnclickHandler(this);">
141
+ First header in document</h1>
142
+ <h2 id="theH2" onclick="h2OnclickHandler(this);">
143
+ Second header in document</h2>
144
+
145
+ <div id="theDIV" onclick="divOnclickHandler(this);">
146
+ <table id="theTABLE" onclick="tableOnclickHandler(this);">
147
+ <tbody id="theTBODY" onclick="tbodyOnclickHandler(this);">
148
+ <tr id="theTR" onclick="trOnclickHandler(this);">
149
+ <td id="theTD" onclick="tdOnclickHandler(this);">
150
+ <ul id="theUL" onclick="ulOnclickHandler(this);">
151
+ <li id="theLI" onclick="liOnclickHandler(this);">
152
+ <p id="theP" onclick="pOnclickHandler(this);">
153
+ Some text <b id="theB" onclick="bOnclickHandler(this);">
154
+ more text <i id="theI" onclick="iOnclickHandler(this);">
155
+ <a id="theA" href="#" onclick="aOnclickHandler(this);">
156
+ <img id="theIMG" src="noImg.png" alt="image link"
157
+ onclick="imgOnclickHandler(this);"
158
+ onload="imgOnloadHandler(this);" />
159
+ </a> fu fu
160
+ </i> bar bar,
161
+ </b> blah blah.
162
+ </p>
163
+ </li>
164
+ </ul>
165
+ </td>
166
+ </tr>
167
+ </tbody>
168
+ </table>
169
+ </div>
170
+ </body>
171
+ </html>
@@ -0,0 +1,46 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+
3
+ <!--
4
+ * This file is a component of env.js,
5
+ * http://github.com/gleneivey/env-js/commits/master/README
6
+ * a Pure JavaScript Browser Environment
7
+ * Copyright 2009 John Resig, licensed under the MIT License
8
+ * http://www.opensource.org/licenses/mit-license.php
9
+ -->
10
+
11
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
12
+ lang="en" dir="ltr" id="html">
13
+ <head>
14
+ <title>Content document for IFRAME element in env.js unit test suite</title>
15
+ </head>
16
+ <body onload="try{checkEventsWithinIframe();}catch(e){;}">
17
+ <p id="anElementWithText">
18
+ This is the text content of a paragraph element.
19
+ </p>
20
+
21
+ <!-- elements and scripting here match test cases in ../unit/window.js -->
22
+ <script>//ensure that we can execute JS inline while loading
23
+ document.write(
24
+ '\x3cp id="js_generated_p"\x3eDynamically-generated\x3c/p\x3e');
25
+ </script>
26
+
27
+ <script>//verify that our "document" object actually points to this page
28
+ document.write('\x3cp id="internalDocRefResult"\x3e');
29
+ if (document.getElementById('anElementWithText'))
30
+ document.write("First paragraph element exists-found.");
31
+ else
32
+ document.write("Eeek! Didn't find paragraph id=anElementWithText.");
33
+ document.write('\x3c/p\x3e');
34
+ </script>
35
+
36
+ <script>// append 'p id=appended "An appended paragraph"' to doc....
37
+ function checkEventsWithinIframe(){
38
+ var t = document.createTextNode("An appended paragraph");
39
+ var p = document.createElement("p");
40
+ p.setAttribute("id", "appended");
41
+ p.appendChild(t);
42
+ document.getElementsByTagName('body')[0].appendChild(p);
43
+ }
44
+ </script>
45
+ </body>
46
+ </html>
@@ -0,0 +1,46 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+
3
+ <!--
4
+ * This file is a component of env.js,
5
+ * http://github.com/gleneivey/env-js/commits/master/README
6
+ * a Pure JavaScript Browser Environment
7
+ * Copyright 2009 John Resig, licensed under the MIT License
8
+ * http://www.opensource.org/licenses/mit-license.php
9
+ -->
10
+
11
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
12
+ lang="en" dir="ltr" id="html">
13
+ <head>
14
+ <title>Content document 'iframe1a.html' for env.js unit test suite</title>
15
+ </head>
16
+ <body onload="checkEventsWithinIframe();">
17
+ <quote id="anotherElementWithText">
18
+ This is the text content of a block-quote element.
19
+ </quote>
20
+
21
+ <!-- elements and scripting here match test cases in ../unit/window.js -->
22
+ <script>//ensure that we can execute JS inline while loading
23
+ document.write(
24
+ '\x3cp id="js_generated_p"\x3eDynamically-generated\x3c/p\x3e');
25
+ </script>
26
+
27
+ <script>//verify that our "document" object actually points to this page
28
+ document.write('\x3cp id="internalDocRefResult"\x3e');
29
+ if (document.getElementById('anElementWithText'))
30
+ document.write("First paragraph element exists-found.");
31
+ else
32
+ document.write("Eeek! Didn't find paragraph id=anElementWithText.");
33
+ document.write('\x3c/p\x3e');
34
+ </script>
35
+
36
+ <script>// append 'p id=appended "An appended paragraph"' to doc....
37
+ function checkEventsWithinIframe(){
38
+ var t = document.createTextNode("An appended paragraph");
39
+ var p = document.createElement("p");
40
+ p.setAttribute("id", "appended");
41
+ p.appendChild(t);
42
+ document.getElementsByTagName('body')[0].appendChild(p);
43
+ }
44
+ </script>
45
+ </body>
46
+ </html>
@@ -0,0 +1,45 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+
4
+ <!--
5
+ * This file is a component of env.js,
6
+ * http://github.com/gleneivey/env-js/commits/master/README
7
+ * a Pure JavaScript Browser Environment
8
+ * Copyright 2009 John Resig, licensed under the MIT License
9
+ * http://www.opensource.org/licenses/mit-license.php
10
+ -->
11
+
12
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
13
+ lang="en" dir="ltr" id="html">
14
+ <head>
15
+ <title>Content document for IFRAME loading in env.js unit test suite</title>
16
+ </head>
17
+ <body>
18
+ <p id="aParaInAnIframe">
19
+ Here is a short paragraph.
20
+ </p>
21
+
22
+ <p id="nestingLevel">2</p>
23
+ <p>
24
+ The preceding is the seed value for the automatic iframe-nesting
25
+ count generation in <code>iframeN.html</code>, used by the nesting
26
+ test in <code>../unit/frame.js</code>. Value must be equal to the
27
+ test's 'startingDepth' variable, minus 1, for things to work.
28
+ </p>
29
+
30
+ <!-- abbreviated copy of code also in iframeN.html -->
31
+ <script>
32
+ function aPara(pId, pText){
33
+ var t = document.createTextNode(pText + " 1");
34
+ var p = document.createElement('p');
35
+ p.setAttribute('id', pId + "1");
36
+ p.appendChild(t);
37
+ document.getElementsByTagName('body')[0].appendChild(p);
38
+ }
39
+
40
+ function iframeOnloadHandler(){ aPara("pCreatedIframeOnload",
41
+ "para iframe onload");
42
+ window.top.frameLoadCount++; }
43
+ </script>
44
+ </body>
45
+ </html>
@@ -0,0 +1,28 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+
4
+ <!--
5
+ * This file is a component of env.js,
6
+ * http://github.com/gleneivey/env-js/commits/master/README
7
+ * a Pure JavaScript Browser Environment
8
+ * Copyright 2009 John Resig, licensed under the MIT License
9
+ * http://www.opensource.org/licenses/mit-license.php
10
+ -->
11
+
12
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
13
+ lang="en" dir="ltr" id="html">
14
+ <head>
15
+ <title>Content document for nested-IFRAME testing in env.js</title>
16
+ </head>
17
+ <body>
18
+ <p id="firstPara">
19
+ First paragraph in <code>iframe.3.html</code>.
20
+ </p>
21
+
22
+ <iframe id="nested1Level" name="nested1Level" src="html/iframe2.html"></iframe>
23
+
24
+ <p id="lastPara">
25
+ Last paragraph in <code>iframe.3.html</code>.
26
+ </p>
27
+ </body>
28
+ </html>
@@ -0,0 +1,57 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+
4
+ <!--
5
+ * This file is a component of env.js,
6
+ * http://github.com/gleneivey/env-js/commits/master/README
7
+ * a Pure JavaScript Browser Environment
8
+ * Copyright 2009 John Resig, licensed under the MIT License
9
+ * http://www.opensource.org/licenses/mit-license.php
10
+ -->
11
+
12
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
13
+ lang="en" dir="ltr" id="html">
14
+ <head>
15
+ <title>Document for testing arbitrary-depth IFRAME nesting in env.js</title>
16
+ </head>
17
+ <body onload="bodyOnloadHandler();">
18
+ <script>
19
+ window.top.numberNestedIframeLoads += 1;
20
+ function aPara(pId, pText, n){
21
+ var t = document.createTextNode(pText + " " + n);
22
+ var p = document.createElement('p');
23
+ p.setAttribute('id', pId + n);
24
+ p.appendChild(t);
25
+ document.getElementsByTagName('body')[0].appendChild(p);
26
+ }
27
+
28
+ window.onload = function(){ aPara("pCreatedWindowOnload",
29
+ "para window onload",
30
+ window.top.numberNestedIframeLoads);
31
+ window.top.winLoadCount += 1; }
32
+ function bodyOnloadHandler(){ aPara("pCreatedBodyOnload",
33
+ "para body onload",
34
+ window.top.numberNestedIframeLoads);
35
+ window.top.bodyLoadCount += 1; }
36
+ function iframeOnloadHandler(){ aPara("pCreatedIframeOnload",
37
+ "para iframe onload",
38
+ window.top.numberNestedIframeLoads);
39
+ window.top.frameLoadCount += 1; }
40
+ </script>
41
+
42
+ <p>
43
+ This document will be loaded into an IFRAME, and the following
44
+ JavaScript finds an element in the parent document that contains
45
+ the nesting level count, increments it, and then produces an
46
+ identical element with the result in this document.
47
+
48
+ <script>
49
+ var counterAsText = window.parent.document.
50
+ getElementById('nestingLevel').innerHTML;
51
+ var newCount = parseInt(counterAsText) + 1;
52
+ document.write('\x3cspan id="nestingLevel"\x3e' + newCount +
53
+ '\x3c/span\x3e');
54
+ </script>
55
+ </p>
56
+ </body>
57
+ </html>
@@ -0,0 +1,181 @@
1
+ <!DOCTYPE html >
2
+ <html lang="en" dir="ltr" id="html">
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" >
5
+ <title>jQuery Test Suite</title>
6
+ </head>
7
+
8
+ <body id="body">
9
+ <h1 id="header">jQuery Test Suite<h1>
10
+
11
+
12
+ <p id="firstp">See <a id="simon1" href="http://simon.incutio.com/archive/2003/03/25/#getElementsBySelector" rel="bookmark">this blog entry</a> for more information.</p>
13
+ <p id="ap">
14
+ Here are some links in a normal paragraph: <a id="google" href="http://www.google.com/" title="Google!">Google</a>,
15
+ <a id="groups" href="http://groups.google.com/">Google Groups</a>.
16
+ This link has <code><a href="http://smin" id="anchor1">class="blog"</a></code>:
17
+ <a href="http://diveintomark.org/" class="blog" hreflang="en" id="mark">diveintomark</a>
18
+
19
+ </p>
20
+ <div id="foo">
21
+ <p id="sndp">Everything inside the red border is inside a div with <code>id="foo"</code>.</p>
22
+ <p lang="en" id="en">This is a normal link: <a id="yahoo" href="http://www.yahoo.com/" class="blogTest">Yahoo</a></p>
23
+ <p id="sap">This link has <code><a href="#2" id="anchor2">class="blog"</a></code>: <a href="http://simon.incutio.com/" class="blog link" id="simon">Simon Willison's Weblog</a></p>
24
+
25
+ </div>
26
+ <p id="first">Try them out:</p>
27
+ <ul id="firstUL"></ul>
28
+ <ol id="empty"></ol>
29
+ <form id="form" action="formaction">
30
+ <input type="text" name="action" value="Test" id="text1" maxlength="30"/>
31
+ <input type="text" name="text2" value="Test" id="text2" disabled="disabled"/>
32
+ <input type="radio" name="radio1" id="radio1" value="on"/>
33
+
34
+ <input type="radio" name="radio2" id="radio2" checked="checked"/>
35
+ <input type="checkbox" name="check" id="check1" checked="checked"/>
36
+ <input type="checkbox" id="check2" value="on"/>
37
+
38
+ <input type="hidden" name="hidden" id="hidden1"/>
39
+ <input type="text" style="display:none;" name="foo[bar]" id="hidden2"/>
40
+
41
+ <input type="text" id="name" name="name" value="name" />
42
+
43
+ <button id="button" name="button">Button</button>
44
+
45
+ <textarea id="area1" maxlength="30">foobar</textarea>
46
+
47
+ <select name="select1" id="select1">
48
+ <option id="option1a" class="emptyopt" value="">Nothing</option>
49
+ <option id="option1b" value="1">1
50
+ <option id="option1c" value="2">2</option>
51
+ <option id="option1d" value="3">3</option>
52
+ </select>
53
+ <select name="select2" id="select2">
54
+ <option id="option2a" class="emptyopt" value="">Nothing</option>
55
+ <option id="option2b" value="1">1</option>
56
+ <option id="option2c" value="2">2</option>
57
+ <option id="option2d" selected="selected" value="3">3</option>
58
+ </select>
59
+ <select name="select3" id="select3" multiple="multiple">
60
+ <option id="option3a" class="emptyopt" value="">Nothing</option>
61
+ <option id="option3b" selected="selected" value="1">1</option>
62
+ <option id="option3c" selected="selected" value="2">2</option>
63
+ <option id="option3d" value="3">3</option>
64
+ </select>
65
+
66
+ <object id="object1" codebase="stupid">
67
+ <param name="p1" value="x1" />
68
+ <param name="p2" value="x2" />
69
+ </object>
70
+
71
+ <span id="台北Táiběi"></span>
72
+ <span id="台北" lang="中文"></span>
73
+ <span id="utf8class1" class="台北Táiběi 台北"></span>
74
+ <span id="utf8class2" class="台北"></span>
75
+ <span id="foo:bar" class="foo:bar"></span>
76
+ <span id="test.foo[5]bar" class="test.foo[5]bar"></span>
77
+
78
+ <foo_bar id="foobar">test element</foo_bar>
79
+ </form>
80
+ <b id="floatTest">Float test.</b>
81
+ <form id="lengthtest">
82
+ <input type="text" id="length" name="test">
83
+ <input type="text" id="idTest" name="id">
84
+ </form>
85
+ <table id="table"></table>
86
+
87
+ <div id="fx-queue">
88
+ <div id="fadein" class='chain test'>fadeIn<div>fadeIn</div></div>
89
+ <div id="fadeout" class='chain test out'>fadeOut<div>fadeOut</div></div>
90
+
91
+ <div id="show" class='chain test'>show<div>show</div></div>
92
+ <div id="hide" class='chain test out'>hide<div>hide</div></div>
93
+
94
+ <div id="togglein" class='chain test'>togglein<div>togglein</div></div>
95
+ <div id="toggleout" class='chain test out'>toggleout<div>toggleout</div></div>
96
+
97
+
98
+ <div id="slideup" class='chain test'>slideUp<div>slideUp</div></div>
99
+ <div id="slidedown" class='chain test out'>slideDown<div>slideDown</div></div>
100
+
101
+ <div id="slidetogglein" class='chain test'>slideToggleIn<div>slideToggleIn</div></div>
102
+ <div id="slidetoggleout" class='chain test out'>slideToggleOut<div>slideToggleOut</div></div>
103
+ </div>
104
+
105
+ <div id="fx-tests"></div>
106
+
107
+ <form id="testForm" action="#" method="get">
108
+ <textarea name="T3" rows="2" cols="15">?
109
+ Z</textarea>
110
+ <input type="hidden" name="H1" value="x" />
111
+ <input type="hidden" name="H2" />
112
+ <input name="PWD" type="password" value="" />
113
+ <input name="T1" type="text" />
114
+ <input name="T2" type="text" value="YES" readonly="readonly" />
115
+ <input type="checkbox" name="C1" value="1" />
116
+ <input type="checkbox" name="C2" />
117
+ <input type="radio" name="R1" value="1" />
118
+ <input type="radio" name="R1" value="2" />
119
+ <input type="text" name="My Name" value="me" />
120
+ <input type="reset" name="reset" value="NO" />
121
+ <select name="S1">
122
+ <option value="abc">ABC</option>
123
+ <option value="abc">ABC</option>
124
+ <option value="abc">ABC</option>
125
+ </select>
126
+ <select name="S2" multiple="multiple" size="3">
127
+ <option value="abc">ABC</option>
128
+ <option value="abc">ABC</option>
129
+ <option value="abc">ABC</option>
130
+ </select>
131
+ <select name="S3">
132
+ <option selected="selected">YES</option>
133
+ </select>
134
+ <select name="S4">
135
+ <option value="" selected="selected">NO</option>
136
+ </select>
137
+ <input type="submit" name="sub1" value="NO" />
138
+ <input type="submit" name="sub2" value="NO" />
139
+ <input type="image" name="sub3" value="NO" />
140
+ <button name="sub4" type="submit" value="NO">NO</button>
141
+ <input name="D1" type="text" value="NO" disabled="disabled" />
142
+ <input type="checkbox" checked="checked" disabled="disabled" name="D2" value="NO" />
143
+ <input type="radio" name="D3" value="NO" checked="checked" disabled="disabled" />
144
+ <select name="D4" disabled="disabled">
145
+ <option selected="selected" value="NO">NO</option>
146
+ </select>
147
+ </form>
148
+ <div id="moretests">
149
+ <form>
150
+ <div id="checkedtest" style="display:none;">
151
+ <input type="radio" name="checkedtestradios" checked="checked"/>
152
+ <input type="radio" name="checkedtestradios" value="on"/>
153
+ <input type="checkbox" name="checkedtestcheckboxes" checked="checked"/>
154
+ <input type="checkbox" name="checkedtestcheckboxes" />
155
+ </div>
156
+ </form>
157
+ <div id="nonnodes"><span>hi</span> there <!-- mon ami --></div>
158
+ <div id="t2037">
159
+ <div><div class="hidden">hidden</div></div>
160
+ </div>
161
+ </div>
162
+ </div>
163
+ </dl>
164
+
165
+ <ol id="tests"></ol>
166
+
167
+ <!-- test execution of main pages's body-onload tag functionality -->
168
+ <script>
169
+ var bodyElem = document.getElementsByTagName('body')[0];
170
+ bodyElem.onload = function(){
171
+ var t = document.createTextNode(
172
+ 'Look, a dynamically-generated paragraph!');
173
+ var p = document.createElement('p');
174
+ p.setAttribute('id', 'pCreatedByBodyOnload');
175
+ p.appendChild(t);
176
+ bodyElem.appendChild(p);
177
+ }
178
+ </script>
179
+ <script>document.write("<a>efg");</script><p>abc
180
+ </body>
181
+ </html>