views:

117

answers:

2

Hi, I have the following Javscript code. When the page is loaded it is scrolled to the right position. When I click on the link to run the function the page scrolls to the top of the page. Has anybody any idea how to fix it?

<html>
    <head>
        <script  type="text/javascript">
            function scroll() {
                window.scrollTo(0, 400)
            }
        </script>
        <title></title>
    </head>
    <body onload="window.scrollTo(0, 400)">
        <img src="a.jpg"/>
        <a href="#" onclick="scroll">comments1</a>
    </body>
</html>
+4  A: 

Use

onclick="scroll(); return false;"

that should fix it.

Pekka
+1  A: 

To add a bit more detail, with the return false;, the click event continues after the page is scrolled, and the click event follows the href to #, which is the top of the page. An alternative way to fix this is:

<a href="javascript:void(0);" onclick="scroll">comments1</a>

Returning false is better, IMO, but this would also do the trick.

Bialecki
You must still *call* the function ("`scroll();`"), not just reference it (`"scroll"`).
npup