有没有办法可以在网页的开头插入内容,而不会让网页给人以滚动的印象。
我正在尝试实现类似无限滚动的东西,但我需要能够无限向上滚动(我还在另一端卸载内容,以便滚动条不会变得无穷小并且应用程序不会占用太多内存。)
我很高兴使用javascript,我宁愿不使用库(我试图保持较轻的重量)。
有什么想法吗?
答案 0 :(得分:1)
添加内容时,您可以使用window.scrollBy(x, y)
向下滚动(您必须计算添加内容的高度)。
答案 1 :(得分:1)
在我看来,布局是这样的:
<div class='container'>
<div class='list'>
product cards...
</div>
<button>Load more</button>
</div>
document.activeElement.blur()
之类的东西,一切都很好。答案 2 :(得分:0)
一个可能的想法是完全绕过滚动机制并自己动手。
基本上,使用display: fixed
定位每个元素。然后,您可以使用负位置在屏幕上方加载元素。
您必须同步文档的高度(只需添加空格),以便文档滚动条正确无误。然后,捕获滚动事件并调整页面中所有元素的固定位置。
我不确定它会有多顺利,但我相当肯定你可以得到你正在寻找的效果。
答案 3 :(得分:0)
在执行代码创建元素之前,只需执行以下操作:
var scrollY = window.scrollY;
window.onscroll = function(){
window.scrollTo(0, scrollY);
window.onscroll = null;
};
请注意,如果您已经拥有onscroll
功能,则需要在此之后重新分配该功能...