<!DOCTYPE HTML> <html id="a" id="b"> <!-- https://bugzilla.mozilla.org/show_bug.cgi?id=324378 --> <head id="c" id="d"> <head id="j" foo="k" foo="l"> <title>Test for Bug 324378</title> <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> </head> <body id="e" id="f"> <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=324378">Mozilla Bug 324378</a> <script> var html = document.documentElement; is(document.getElementsByTagName("html").length, 1, "Unexpected number of htmls"); is(document.getElementsByTagName("html")[0], html, "Unexpected <html> element"); is(document.getElementsByTagName("head").length, 1, "Unexpected number of heads"); is(html.getElementsByTagName("head").length, 1, "Unexpected number of heads in <html>"); is(document.getElementsByTagName("body").length, 1, "Unexpected number of bodies"); is(html.getElementsByTagName("body").length, 1, "Unexpected number of bodies in <html>"); var head = document.getElementsByTagName("head")[0]; var body = document.getElementsByTagName("body")[0]; </script> <p id="display"></p> <div id="content" style="display: none"> <html id="g" foo="h" foo="i"> <body id="m" foo="n" foo="o"> </div> <pre id="test"> <script class="testbody" type="text/javascript"> /** Test for Bug 324378 **/ is(document.getElementsByTagName("html").length, 1, "Unexpected number of htmls after additions"); is(document.getElementsByTagName("html")[0], html, "Unexpected <html> element"); is(document.documentElement, html, "Unexpected root node"); is(document.getElementsByTagName("head").length, 1, "Unexpected number of heads after additions"); is(document.getElementsByTagName("head")[0], head, "Unexpected <head> element"); is(document.getElementsByTagName("body").length, 1, "Unexpected number of bodies after additions"); is(document.getElementsByTagName("body")[0], body, "Unexpected <body> element"); is(html.id, "a", "Unexpected <html> id"); is(head.id, "c", "Unexpected <head> id"); is(body.id, "e", "Unexpected <body> id"); is($("a"), html, "Unexpected node with id=a"); is($("b"), null, "Unexpected node with id=b"); is($("c"), head, "Unexpected node with id=c"); is($("d"), null, "Unexpected node with id=d"); is($("e"), body, "Unexpected node with id=e"); is($("f"), null, "Unexpected node with id=f"); is($("g"), null, "Unexpected node with id=g"); is($("j"), null, "Unexpected node with id=j"); is($("m"), null, "Unexpected node with id=m"); is(html.getAttribute("foo"), "h", "Unexpected 'foo' value on <html>"); is(head.getAttribute("foo"), null, "Unexpected 'foo' value on <head>"); is(body.getAttribute("foo"), "n", "Unexpected 'foo' value on <body>"); </script> </pre> </body> </html>