Javascript 自动从上到下滚动页面,然后备份(并重复)
我正在试图弄清楚如何在页面加载时自动滚动到页面底部(已经详细描述),然后在到达页面底部时自动向上滚动。我可以找到自动滚动到底部的功能,但我不知道如何识别我何时处于页面底部,以及如何在我处于底部时向上滚动。我会使用通用Javascript(或JQuery)来实现这一点Javascript 自动从上到下滚动页面,然后备份(并重复),javascript,jquery,scroll,Javascript,Jquery,Scroll,我正在试图弄清楚如何在页面加载时自动滚动到页面底部(已经详细描述),然后在到达页面底部时自动向上滚动。我可以找到自动滚动到底部的功能,但我不知道如何识别我何时处于页面底部,以及如何在我处于底部时向上滚动。我会使用通用Javascript(或JQuery)来实现这一点 提前谢谢 您可以将函数作为参数传递,当到达末尾时将调用该参数。我刚刚为此编写了一个jQuery插件小提琴: $("body").animate({ scrollTop: '1000' }, 500, function(){
提前谢谢 您可以将函数作为参数传递,当到达末尾时将调用该参数。我刚刚为此编写了一个jQuery插件小提琴:
$("body").animate({ scrollTop: '1000' }, 500, function(){
$("body").animate({ scrollTop: '0' }, 500, function(){
$("body").animate({ scrollTop: '1000' }, 500);
});
});
试试这个:
您可以在此处全屏查看演示:
如果要提高或降低速度,请更改数字“1000”
在Chrome、Firefox和IE 6-9中运行良好
编辑:
如果您需要它永远重复(不推荐…),您可以这样做:下面是使用纯JavaScript的示例
var Height=document.documentElement.scrollHeight;
var currentHeight=0;
var bool=真;
var阶跃=5;
无功转速=10;
var间隔=设置间隔(滚动页面,速度)
函数scrollpage(){
如果(当前高度<0 | |当前高度>高度)
bool=!bool;
如果(bool){
滚动到(0,当前高度+=步长);
}否则{
//如果你不想继续滚动
//clearInterval(interval)使用clearInterval
滚动到(0,当前高度-=步长);
}
}
#顶{
边框:1px纯黑;
高度:10000px;
}
#底部{
边框:1px纯红;
}
顶部
底部
请注意,建议的无限滚动JSFIDLE代码可以在firefox中使用,但是如果没有有效的
不过我需要重复一遍。这对于一次迭代非常有效,但是我如何才能让它永远这样做呢?在这种情况下,你可以这样做:尽管我建议不要这样做,因为它可能会使一些用户的浏览器崩溃。啊,谢谢!这在JSFIDLE上非常有效,但不会加载到浏览器上。嗯,我会玩玩它,但至少代码在理论上是有效的!我在asp.net中使用了您的代码和定时器控件,后者在例程中调用该函数。所以它会无限地上下摆动。有可能在屏幕的任何地方点击一下取消自动滚动吗?很有用。谢谢我正在寻找一个不使用jquery的代码。并找到了这个…感谢添加Javascript解决方案
(function($){
$.fn.downAndUp = function(time, repeat){
var elem = this;
(function dap(){
elem.animate({scrollTop:elem.outerHeight()}, time, function(){
elem.animate({scrollTop:0}, time, function(){
if(--repeat) dap();
});
});
})();
}
})(jQuery);
$("html").downAndUp(2000, 5)
$('html, body').animate({ scrollTop: $(document).height() - $(window).height() }, 1000, function() {
$(this).animate({ scrollTop: 0 }, 1000);
});