<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>

