1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin" type="text/css"?>
<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css"
type="text/css"?>
<window title="Test nodelists from chrome"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
<!-- test results are displayed in the html:body -->
<body xmlns="http://www.w3.org/1999/xhtml">
</body>
<!-- test code goes here -->
<script type="application/javascript"><![CDATA[
SimpleTest.waitForExplicitFinish();
function go() {
var win = $('ifr').contentWindow;
var list = win.document.getElementsByTagName('p');
is(list.length, 3, "can get the length");
ok(HTMLParagraphElement.isInstance(list[0]), "can get list[0]");
is(list[0], list.item(0), "list.item works");
is(list.item, list.item, "don't recreate functions for each get");
var list2 = list[2];
ok(HTMLParagraphElement.isInstance(list[2]), "list[2] exists");
ok("2" in list, "in operator works");
is(win.document.body.removeChild(win.document.body.lastChild), list2, "remove last paragraph element");
ok(!("2" in list), "in operator doesn't see phantom element");
is(list[2], undefined, "no node there!");
var optionList = win.document.createElement("select").options;
var option = win.document.createElement("option");
optionList[0] = option;
is(optionList.item(0), option, "Creators work");
option = win.document.createElement("option");
optionList[0] = option;
is(optionList.item(0), option, "Setters work");
SimpleTest.finish();
}
]]></script>
<iframe id="ifr"
src="http://mochi.test:8888/tests/js/xpconnect/tests/mochitest/file_nodelists.html"
onload="go()" />
</window>
|