|
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
|
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
|
3 |
|
4 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" xmlns:pickle="http://ns.example.org/pickle" lang="en"> |
|
5 <head> |
|
6 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> |
|
7 <title>W3 Tests for Element Traversal - XHTML</title> |
|
8 <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> |
|
9 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> |
|
10 </head> |
|
11 <body> |
|
12 |
|
13 <p id="parentEl_count"> |
|
14 <span id="first_element_child_count"> |
|
15 <span></span> |
|
16 <span></span> |
|
17 </span> |
|
18 <span id="middle_element_child_count"></span> |
|
19 <span id="last_element_child_count"></span> |
|
20 </p> |
|
21 |
|
22 |
|
23 <p id="parentEl_nochild"> |
|
24 </p> |
|
25 |
|
26 <p id="parentEl_null"> |
|
27 </p> |
|
28 |
|
29 <p id="parentEl_dynamicadd"> |
|
30 <span id="first_emement_child_add"></span> |
|
31 </p> |
|
32 |
|
33 <p id="parentEl_dynamicremove"> |
|
34 <span id="first_emement_child_remove"></span> |
|
35 <span id="last_emement_child_remove"></span> |
|
36 </p> |
|
37 |
|
38 |
|
39 <p id="parentEl_fec"> |
|
40 <span id="first_element_child_fec"></span> |
|
41 </p> |
|
42 |
|
43 <p id="parentEl_lec"> |
|
44 <span id="first_element_child_lec"></span> |
|
45 <span id="last_element_child_lec"></span> |
|
46 </p> |
|
47 |
|
48 <div id="parentEl_namespace"> |
|
49 <pickle:dill /> |
|
50 </div> |
|
51 |
|
52 <p id="parentEl_nes"> |
|
53 <span id="first_element_child_nes"></span> |
|
54 <span id="last_element_child_nes"></span> |
|
55 </p> |
|
56 |
|
57 <p id="parentEl_pes"> |
|
58 <span id="first_element_child_pes"></span> |
|
59 <span id="middle_element_child_pes"></span> |
|
60 <span id="last_element_child_pes"></span> |
|
61 </p> |
|
62 |
|
63 <p id="parentEl_sibnull"> |
|
64 <span id="first_element_child_sibnull"></span> |
|
65 </p> |
|
66 |
|
67 <pre id="test"> |
|
68 <script class="testbody" type="text/javascript"><![CDATA[ |
|
69 |
|
70 |
|
71 |
|
72 function runTest() { |
|
73 |
|
74 //from et-childElementCount.html |
|
75 var parentEl = document.getElementById("parentEl_count"); |
|
76 is(parentEl.childElementCount && 3, parentEl.childElementCount, "Child Element Count is mismatched"); |
|
77 |
|
78 //from et-childElementCount-nochild.html |
|
79 var parentEl_nochild = document.getElementById("parentEl_nochild"); |
|
80 is(parentEl_nochild.childElementCount, 0, "Child Element count is not 0"); |
|
81 |
|
82 //from et-childElementCount-null.html |
|
83 parentEl = document.getElementById("parentEl_null"); |
|
84 is(null == parentEl.firstElementChild, null == parentEl.lastElementChild, "firstElementChild or lastElementChild is not null"); |
|
85 |
|
86 //from et-dynamic-add.html |
|
87 parentEl = document.getElementById("parentEl_dynamicadd"); |
|
88 var newChild = document.createElement("span") |
|
89 parentEl.appendChild( newChild ); |
|
90 is(parentEl.childElementCount && 2, parentEl.childElementCount, "failed to add span element"); |
|
91 |
|
92 //from et-dynamic-remove.html |
|
93 parentEl = document.getElementById("parentEl_dynamicremove"); |
|
94 var lec = parentEl.lastElementChild; |
|
95 parentEl.removeChild( lec ); |
|
96 is(parentEl.childElementCount && 1, parentEl.childElementCount, "failed to remove span element"); |
|
97 |
|
98 //from et-firstElementChild.html |
|
99 parentEl = document.getElementById("parentEl_fec"); |
|
100 var fec = parentEl.firstElementChild; |
|
101 is(fec.nodeType, 1, "failed to get firstElementChild"); |
|
102 is(fec.getAttribute("id"), "first_element_child_fec", "failed to get firstElementChild"); |
|
103 isnot(fec, null, "failed to get firstElementChild"); |
|
104 |
|
105 //from et-lastElementChild.html |
|
106 parentEl = document.getElementById("parentEl_lec"); |
|
107 var lec = parentEl.lastElementChild; |
|
108 is(lec.nodeType, 1, "failed to get lastElementChild"); |
|
109 is(lec.getAttribute("id"), "last_element_child_lec", "failed to get lastElementChild"); |
|
110 isnot(lec, null, "failed to get lastElementChild"); |
|
111 |
|
112 //from et-namespace.html |
|
113 parentEl = document.getElementById("parentEl_namespace"); |
|
114 var nChild = parentEl.firstElementChild; |
|
115 is(nChild && "dill", nChild.localName, "failed to get a namespace element"); |
|
116 |
|
117 |
|
118 //from et-nextElementSibling.html |
|
119 parentEl = document.getElementById("parentEl_nes"); |
|
120 var fec = parentEl.firstElementChild; |
|
121 var nes = fec.nextElementSibling; |
|
122 is(nes.nodeType, 1, "failed to get nextElementSibling"); |
|
123 is(nes.getAttribute("id"), "last_element_child_nes", "failed to get nextElementSibling"); |
|
124 isnot(nes, null, "failed to get nextElementSibling"); |
|
125 |
|
126 //from et-previousElementSibling.html |
|
127 var lec = document.getElementById("last_element_child_pes"); |
|
128 var pes = lec.previousElementSibling; |
|
129 is(pes.nodeType, 1, "failed to get previousElementSibling"); |
|
130 is(pes.getAttribute("id"), "middle_element_child_pes", "failed to get previousElementSibling"); |
|
131 isnot(pes, null, "failed to get previousElementSibling"); |
|
132 |
|
133 //from et-siblingElement-null.html |
|
134 var fec = document.getElementById("first_element_child_sibnull"); |
|
135 var pes = fec.previousElementSibling; |
|
136 var nes = fec.nextElementSibling; |
|
137 is(pes, null, "got unexpected previousElementSibling"); |
|
138 is(nes, null, "got unexpected nextElementSibling"); |
|
139 |
|
140 } |
|
141 |
|
142 SimpleTest.waitForExplicitFinish(); |
|
143 addLoadEvent(runTest); |
|
144 addLoadEvent(SimpleTest.finish) |
|
145 ]]></script> |
|
146 </pre> |
|
147 </body> |
|
148 </html> |
|
149 |