<html>
<head>
<title>"autofocus" scrolling test</title>
<style>
 p#test{ position:absolute; top:150% }
 input { background:red }
 input:focus { background:lime }
</style>
<script language="JavaScript" type="text/javascript">
    function log(message) {
        document.getElementById("console").innerHTML += "<li>"+message+"</li>";
    }

    function test() {
        if (window.testRunner)
            testRunner.dumpAsText();

        if (document.activeElement == document.getElementsByTagName("input")[0] &&
            document.body.scrollTop != 0)
            log("SUCCESS");
        else
            log("FAILURE");
    }
</script>
</head>
<body onload="test()">
<p id="test">This form control should have a green background: <input autofocus>
<hr>
<ol id="console"></ol>
</body>
</html>