<html>
<script>
if (window.testRunner)
{
    testRunner.dumpAsText();
    testRunner.waitUntilDone();
}

function scrollEventFired()
{
    document.getElementById('console').innerHTML = "Scrolled by JavaScript scrollTo(): PASS";
 
    if (window.testRunner)
        testRunner.notifyDone();
}

function runTest()
{
    window.frames[0].onscroll = scrollEventFired;
    window.frames[0].scrollTo(0, 50);
}
</script>
<junk id="console">
<iframe onload="runTest();" src="resources/scrollable-iframe.html">
</junk>
</html>

