|
1 var topElements = document.getElementsByClassName("scrollTop"); |
|
2 if (!topElements.length) { |
|
3 topElements = [document.documentElement]; |
|
4 } |
|
5 |
|
6 var failed = false; |
|
7 |
|
8 function doScroll(d) |
|
9 { |
|
10 if (failed) |
|
11 return; |
|
12 for (var i = 0; i < topElements.length; ++i) { |
|
13 var e = topElements[i]; |
|
14 e.scrollTop = d; |
|
15 if (e.scrollTop != d) { |
|
16 document.documentElement.textContent = |
|
17 "Scrolling failed on " + e.tagName + " element, " + |
|
18 "tried to scroll to " + d + ", got " + e.scrollTop + |
|
19 " (Random number: " + Math.random() + ")"; |
|
20 failed = true; |
|
21 } |
|
22 } |
|
23 } |
|
24 |
|
25 if (document.location.search == '?ref') { |
|
26 doScroll(20); |
|
27 } else if (document.location.search == '?up') { |
|
28 doScroll(40); |
|
29 document.documentElement.setAttribute("class", "reftest-wait"); |
|
30 window.addEventListener("MozReftestInvalidate", function() { |
|
31 document.documentElement.removeAttribute("class"); |
|
32 doScroll(20); |
|
33 }, false); |
|
34 } else { |
|
35 doScroll(1); |
|
36 document.documentElement.setAttribute("class", "reftest-wait"); |
|
37 window.addEventListener("MozReftestInvalidate", function() { |
|
38 document.documentElement.removeAttribute("class"); |
|
39 doScroll(20); |
|
40 }, false); |
|
41 } |