blob: b3767202c2fad7930f406a141a65eb08404b6d7a [file] [log] [blame]
<!DOCTYPE html>
<script src="../../../resources/js-test.js"></script>
<iframe id="strict1" src="resources/overflow-scroll-scrollable-body-strict.html"></iframe>
<iframe id="quirks1" src="resources/overflow-scroll-scrollable-body-quirks.html"></iframe>
<iframe id="strict2" src="resources/overflow-scroll-non-scrollable-body-strict.html"></iframe>
<iframe id="quirks2" src="resources/overflow-scroll-non-scrollable-body-quirks.html"></iframe>
<iframe id="strict3" src="resources/overflow-hidden-scrollable-body-strict.html"></iframe>
<iframe id="quirks3" src="resources/overflow-hidden-scrollable-body-quirks.html"></iframe>
<iframe id="strict4" src="resources/display-none-body-strict.html"></iframe>
<iframe id="quirks4" src="resources/display-none-body-quirks.html"></iframe>
<script>
var count = 0;
var iframeStrict1, iframeStrict2, iframeStrict3, iframeStrict4;
var iframeQuirks1, iframeQuirks2, iframeQuirks3, iframeQuriks4;
function verifyTest() {
// Need to wait on all inner frames to load.
if (count++ < 7)
return;
description('Test for scrollTop/Left and scrollingElement values of scrollable document.body in quirks and strict modes');
iframeStrict1 = document.getElementById("strict1");
iframeStrict2 = document.getElementById("strict2");
iframeStrict3 = document.getElementById("strict3");
iframeStrict4 = document.getElementById("strict4");
iframeQuirks1 = document.getElementById("quirks1");
iframeQuirks2 = document.getElementById("quirks2");
iframeQuirks3 = document.getElementById("quirks3");
iframeQuirks4 = document.getElementById("quirks4");
shouldBe("iframeStrict1.contentDocument.scrollingElement", "iframeStrict1.contentDocument.documentElement");
shouldBe("iframeStrict1.contentDocument.documentElement.scrollTop", "0");
shouldBe("iframeStrict1.contentDocument.documentElement.scrollLeft", "100");
shouldBe("iframeStrict1.contentDocument.body.scrollTop", "200");
shouldBe("iframeStrict1.contentDocument.body.scrollLeft", "0");
shouldBe("iframeStrict1.contentWindow.pageYOffset", "0");
shouldBe("iframeStrict1.contentWindow.pageXOffset", "100");
shouldBeNull("iframeQuirks1.contentDocument.scrollingElement");
shouldBe("iframeQuirks1.contentDocument.documentElement.scrollTop", "0");
shouldBe("iframeQuirks1.contentDocument.documentElement.scrollLeft", "0");
shouldBe("iframeQuirks1.contentDocument.body.scrollTop", "200");
shouldBe("iframeQuirks1.contentDocument.body.scrollLeft", "0");
shouldBe("iframeQuirks1.contentWindow.pageYOffset", "0");
shouldBe("iframeQuirks1.contentWindow.pageXOffset", "0");
shouldBe("iframeStrict2.contentDocument.scrollingElement", "iframeStrict2.contentDocument.documentElement");
shouldBe("iframeStrict2.contentDocument.documentElement.scrollTop", "0");
shouldBe("iframeStrict2.contentDocument.documentElement.scrollLeft", "100");
shouldBe("iframeStrict2.contentDocument.body.scrollTop", "0");
shouldBe("iframeStrict2.contentDocument.body.scrollLeft", "0");
shouldBe("iframeStrict2.contentWindow.pageYOffset", "0");
shouldBe("iframeStrict2.contentWindow.pageXOffset", "100");
shouldBeNull("iframeQuirks2.contentDocument.scrollingElement");
shouldBe("iframeQuirks2.contentDocument.documentElement.scrollTop", "0");
shouldBe("iframeQuirks2.contentDocument.documentElement.scrollLeft", "0");
shouldBe("iframeQuirks2.contentDocument.body.scrollTop", "0");
shouldBe("iframeQuirks2.contentDocument.body.scrollLeft", "0");
shouldBe("iframeQuirks2.contentWindow.pageYOffset", "0");
shouldBe("iframeQuirks2.contentWindow.pageXOffset", "0");
shouldBe("iframeStrict3.contentDocument.scrollingElement", "iframeStrict3.contentDocument.documentElement");
shouldBe("iframeStrict3.contentDocument.documentElement.scrollTop", "0");
shouldBe("iframeStrict3.contentDocument.documentElement.scrollLeft", "100");
shouldBe("iframeStrict3.contentDocument.body.scrollTop", "200");
shouldBe("iframeStrict3.contentDocument.body.scrollLeft", "0");
shouldBe("iframeStrict3.contentWindow.pageYOffset", "0");
shouldBe("iframeStrict3.contentWindow.pageXOffset", "100");
shouldBeNull("iframeQuirks3.contentDocument.scrollingElement");
shouldBe("iframeQuirks3.contentDocument.documentElement.scrollTop", "0");
shouldBe("iframeQuirks3.contentDocument.documentElement.scrollLeft", "0");
shouldBe("iframeQuirks3.contentDocument.body.scrollTop", "200");
shouldBe("iframeQuirks3.contentDocument.body.scrollLeft", "0");
shouldBe("iframeQuirks3.contentWindow.pageYOffset", "0");
shouldBe("iframeQuirks3.contentWindow.pageXOffset", "0");
shouldBe("iframeStrict4.contentDocument.scrollingElement", "iframeStrict4.contentDocument.documentElement");
shouldBe("iframeStrict4.contentDocument.body.scrollTop", "0");
shouldBe("iframeStrict4.contentDocument.body.scrollLeft", "0");
shouldBe("iframeQuirks4.contentDocument.scrollingElement", "iframeQuirks4.contentDocument.body");
shouldBe("iframeQuirks4.contentDocument.body.scrollTop", "4000");
shouldBe("iframeQuirks4.contentDocument.body.scrollLeft", "3000");
finishJSTest();
}
var jsTestIsAsync = true;
</script>