加载内容作为元素滚动到视图中
问题描述:
我有一个<div>
元素的静态高度和overflow: auto;
样式中的搜索结果列表。我只想加载前x个搜索结果(例如20个),并在用户滚动到包含搜索结果的元素底部时加载另一个x结果。加载内容作为元素滚动到视图中
任何人都可以向我解释我将如何做到这一点?我找到了几个例子,但所有这些例子都使用整个文档的滚动值,而不是一个<div>
。我使用jQuery,如果它很重要。
答
的声音,我喜欢在接近结束时检测滚动条的位置。 Found this当时在jquery组上搜索。其建议的解决方案,如果需要添加少量文档:
$.fn.isNearTheEnd = function() {
// remember inside of $.fn.whatever = function() {}
// this is the jQuery object the function is called on.
// this[0] is DOMElement
return this[0].scrollTop + this.height() >= this[0].scrollHeight;
};
// an example.
$("#content").bind("scroll", function() {
if ($(this).isNearTheEnd()) // load some content
});
答
如果你比较像你div的.top() + .height()
到窗口的.scrollTop + .height
那么当你在该分区的底部,你可以告诉,然后触发下一个内容加载...
谢谢,那就是我一直在寻找的。 – Aistina 2009-09-23 11:46:08