feat: scroll up to load more items
This commit is contained in:
@@ -145,6 +145,25 @@ async function scrollDownToLoadMore(selector, limit) {
|
||||
}
|
||||
}
|
||||
|
||||
async function scrollUpToLoadMore(selector, limit) {
|
||||
let previousHeight = 0;
|
||||
let itemsLoaded = 0;
|
||||
|
||||
while (itemsLoaded < limit) {
|
||||
window.scrollBy(0, -window.innerHeight);
|
||||
await new Promise(resolve => setTimeout(resolve, 1000));
|
||||
|
||||
const currentHeight = document.body.scrollHeight;
|
||||
|
||||
if (currentHeight === previousHeight) {
|
||||
break; // No more items to load
|
||||
}
|
||||
|
||||
previousHeight = currentHeight;
|
||||
itemsLoaded += document.querySelectorAll(selector).length;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a "scrape" result from the current page.
|
||||
* @returns {Array<Object>} *Curated* array of scraped information (with sparse rows removed)
|
||||
|
||||
Reference in New Issue
Block a user