37 lines
1.3 KiB
HTML
37 lines
1.3 KiB
HTML
<!DOCTYPE html>
|
|
<meta charset=utf-8>
|
|
<title>Node-manipulation-adopted</title>
|
|
<link rel=help href="https://dom.spec.whatwg.org/#dom-domimplementation-createhtmldocument">
|
|
<link rel=help href="https://dom.spec.whatwg.org/#mutation-algorithms">
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<div id="log"></div>
|
|
<script>
|
|
"use strict";
|
|
|
|
test(() => {
|
|
const old = document.implementation.createHTMLDocument("");
|
|
const div = old.createElement("div");
|
|
div.appendChild(old.createTextNode("text"));
|
|
assert_equals(div.ownerDocument, old);
|
|
assert_equals(div.firstChild.ownerDocument, old);
|
|
document.body.appendChild(div);
|
|
assert_equals(div.ownerDocument, document);
|
|
assert_equals(div.firstChild.ownerDocument, document);
|
|
}, "simple append of foreign div with text");
|
|
|
|
test(function() {
|
|
var div = document.createElement("div");
|
|
div.id = "foobar";
|
|
|
|
assert_equals(div.ownerDocument, document);
|
|
assert_equals(div.attributes[0].ownerDocument, document);
|
|
|
|
var other_doc = document.implementation.createHTMLDocument();
|
|
other_doc.body.appendChild(div);
|
|
|
|
assert_equals(div.ownerDocument, other_doc);
|
|
assert_equals(div.attributes[0].ownerDocument, other_doc);
|
|
}, "Adopting an element into a different document update's the element's owner doc as well as the owner docs of it's attributes")
|
|
|
|
</script>
|