我在jQuery代码段上有错误,我不是jQuery专家。我有一个滚动div,它将使用以下功能自动滚动。
// When DOM is fully loaded
jQuery(document).ready(function ($) {
function scroll(speed) {
$('.shooter-scroller').animate({
scrollTop: $(document).height() - $('.shooter-scroller').height()
}, fast, function () {
$(this).animate({
scrollTop: 0
}, speed);
});
}
speed = 15000;
scroll(speed)
setInterval(function () {
scroll(speed)
}, speed * 2);
});
我需要用这个脚本做两件事,但如果人们可以提供帮助,他们会很乐意帮助。
由于某种原因,滚动停在div的中间位置并且没有显示div中的所有内容,我想让滚动一旦到达底部就重置回内容的顶部。这有可能吗?
任何帮助都会很棒!
小提琴:http://jsfiddle.net/andysimps1985/gn1a2kn7/1/
提前致谢。
答案 0 :(得分:0)
要到达底部,您必须将scrollTop作为元素的高度。
// When DOM is fully loaded
jQuery(document).ready(function ($) {
function scroll(speed) {
$('.shooter-scroller').animate({
scrollTop: $('.shooter-scroller').prop("scrollHeight")
}, fast, function () {
$(this).animate({
scrollTop: 0
}, speed);
});
}
speed = 15000;
scroll(speed)
setInterval(function () {
scroll(speed)
}, speed * 2);
});
这将获得滚动高度。
答案 1 :(得分:0)
您需要更改
$(document).height() - $('.shooter-scroller').height()
到
$('.shooter-scroller').prop('scrollHeight')
这会给你正确的身高。 见this jsfiddle(注意:我改变了速度以获得更清晰的结果)