10 <script src=
"../../resources/testharness.js"></script>
11 <script src=
"../../resources/testharnessreport.js"></script>
12 <script src=
"resources/scroll-behavior-test.js"></script>
13 <script type=
"text/javascript">
14 function getEndPosition(testCase
, startPosition
) {
17 endPosition
.x
= testCase
.x
;
19 endPosition
.x
= startPosition
.x
;
22 endPosition
.y
= testCase
.y
;
24 endPosition
.y
= startPosition
.y
;
29 function jsScroll(testCase
) {
30 var subframe
= document
.getElementById("subframe");
32 var scrollToOptions
= {behavior
: testCase
.js
};
34 scrollToOptions
.left
= testCase
.x
;
36 scrollToOptions
.top
= testCase
.y
;
37 subframe
.contentDocument
.scrollingElement
.scroll(scrollToOptions
);
39 subframe
.contentDocument
.scrollingElement
.scroll(testCase
.x
, testCase
.y
);
44 {js
: "instant", css
: "auto", x
: 1, y
: 2},
45 {js
: "instant", css
: "smooth", x
: 2, y
: 3},
46 {js
: "auto", css
: "auto", x
: 3, y
: 4},
47 {js
: "", css
: "auto", x
: 4, y
: 5},
48 {js
: "auto", css
: "auto", x
: 3},
49 {js
: "auto", css
: "auto", y
: 4},
50 {js
: "auto", css
: "auto"},
51 {js
: "smooth", css
: "auto", waitForEnd
: true, x
: 10, y
: 15},
52 {js
: "smooth", css
: "smooth", waitForEnd
: true, x
: 20, y
: 25},
53 {js
: "auto", css
: "smooth", waitForEnd
: true, x
: 30, y
: 35},
54 {js
: "", css
: "smooth", waitForEnd
: true, x
: 40, y
: 45},
55 {js
: "auto", css
: "smooth", waitForEnd
: true, x
: 45},
56 {js
: "auto", css
: "smooth", waitForEnd
: true, y
: 40},
57 {js
: "smooth", css
: "auto", waitForEnd
: false, x
: 4000, y
: 4100},
58 {js
: "smooth", css
: "smooth", waitForEnd
: false, x
: 15, y
: 20},
59 {js
: "auto", css
: "smooth", waitForEnd
: false, x
: 4100, y
: 4000},
60 {js
: "", css
: "smooth", waitForEnd
: false, x
: 10, y
: 5},
66 for (var i
= 0; i
< testScrolls
.length
; i
++) {
67 testCases
.push(new ScrollBehaviorTestCase(testScrolls
[i
]));
70 var subframe
= document
.getElementById("subframe");
71 var scrollBehaviorTest
= new ScrollBehaviorTest(subframe
.contentDocument
.scrollingElement
,
72 subframe
.contentDocument
,
76 scrollBehaviorTest
.run();
79 window
.addEventListener('load', doTest
, false);
84 <p>Test that calling scroll on a subframe's document element works with both scroll behaviors
</p>
85 <iframe id=
"subframe" src=
"resources/large-subframe.html"></iframe>