是否有人知道以下问题的解决方案?
我试图用固定div内的内容循环进行无限滚动, 我已经修改了这段代码...但是当我尝试使“.content”div固定并给他一个明确的高度时,它总会杀死整个代码。
感谢
$(function() {
// every 1 seconds, check + update
setInterval(appendContent, 400);
setInterval(continueScrolling, 100);
});
var b = $('.content');
// if almost at bottom, append more content
function appendContent() {
if($(window).scrollTop() + $(window).height() * 2 > $(".content").height()) {
b.html(b.html() + b.html()); // double content
}
}
// continue scrolling linearly
function continueScrolling() {
y = $(window).scrollTop();
$("html, body").stop().animate({
scrollTop: y+1000
}, {
duration: 10000,
easing: 'linear',
queue: false
});
}
var page = $("html, body");
$(function() {
page.on("scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove", function(){
page.stop();
});
page.animate({ scrollTop: $(this).position().top }, 'slow', function(){
page.off("scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove");
});
return false;
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="content">
============================<br>
test1<br>
test2<br>
test3<br>
test4<br>
test5<br>
============================<br>
test1<br>
test2<br>
test3<br>
test4<br>
test5<br>
============================<br>
test1<br>
test2<br>
test3<br>
test4<br>
test5<br>
============================<br>
test1<br>
test2<br>
test3<br>
test4<br>
test5<br>
============================<br>
test1<br>
test2<br>
test3<br>
test4<br>
test5<br>
============================<br>
test1<br>
test2<br>
test3<br>
test4<br>
test5<br>
============================<br>
test1<br>
test2<br>
test3<br>
test4<br>
test5<br>
============================<br>
test1<br>
test2<br>
test3<br>
test4<br>
test5<br>
============================<br>
test1<br>
test2<br>
test3<br>
test4<br>
test5<br>
============================<br>
test1<br>
test2<br>
test3<br>
test4<br>
test5<br>
</div>
答案 0 :(得分:0)
你想要定义什么高度?如果数量太小,那么每次迭代循环都会创建很多DOM元素,这可能会导致浏览器渲染代码。尝试增加每次刷新之间的间隔,并降低每次添加的内容。
关于固定的位置,嗯,你告诉元素冻结到位,这样无论你走到哪里都可以留在那里。此功能通常用于粘贴标题或导航栏,我不明白你为什么要在这里使用它。