0

我想在单击链接时轻松地滚动到网页底部。在我的主页底部,我插入了一个名为 wall 的 div 类。我的菜单为 Home、Wall、联系人、概述。如果我从主页单击“墙”,它应该向下滚动到页面底部(记住 div 类墙在同一个主页上。)当我在另一个页面上时说联系人,当我单击菜单中的墙时,主页页面应该被加载,然后应该向下滚动(介意如果点击主页,页面打开并且从不滚动)。有什么办法吗?我用html5设计了网站并使用了以下

    <script type="text/javascript">

     function pageScroll() {
            window.scrollBy(0,50); // horizontal and vertical scroll increments
            scrolldelay = setTimeout('pageScroll()',20); 
// scrolls every 20 milliseconds
    }

      </script>
    <body onload="pageScroll()">

但问题是页面向下滚动并且永远不会让滚动停止。即使我们向上滚动它也会返回到底部......有没有办法只滚动一次?

我几乎不知道拼写 jquery ...需要帮助。

4

2 回答 2

3

这很简单

$('html, body').animate({ 
    scrollTop: $(document).height()-$(window).height()
});

并滚动到特定的 Id 使用以下

$("html, body").animate({ 
    scrollTop: $("#theID").scrollTop() 
}, 1000);
于 2012-12-20T13:14:26.653 回答
1

从字面上看,在谷歌上搜索“使用缓动 jquery 滚动”后的第一个结果是 “使用 JQuery 平滑垂直或水平页面滚动”,这正是您所要求的。研究该页面的内容,并记得在提出问题之前进行研究。


这是该页面的垂直滚动示例,这是完成所有工作的 javascript 代码。

$(function() {
    $('ul.nav a').bind('click',function(event){
        var $anchor = $(this);

        $('html, body').stop().animate({
            scrollTop: $($anchor.attr('href')).offset().top
        }, 1500,'easeInOutExpo');
        /*
        if you don't want to use the easing effects:
        $('html, body').stop().animate({
            scrollTop: $($anchor.attr('href')).offset().top
        }, 1000);
        */
        event.preventDefault();
    });
});

如果您是 JQuery 新手并且不知道从哪里开始,我建议您从他们的教程页面开始学习基础知识。我还想指出,建议使用不显眼的 javascript,否则在 HTML 中混合 javascript 函数调用会变得混乱。

另外,我不确定您是否知道,但是如果您想将javascript 文件链接到您的 html,您可以在头部或正文中执行此操作:

<script type="text/javascript" src="external_javascript.js"></script>

快乐编码!

于 2012-12-20T13:19:42.033 回答