From 7e3e7f6a676a5f35f0ce07406b4e9983a2df3414 Mon Sep 17 00:00:00 2001 From: Luke Date: Thu, 9 Aug 2018 22:11:45 -0700 Subject: [PATCH] Make cluster calculation work when clustered content is further down Let's say you have a page that is scrollable, with a screen or two (or more) of non-clustered content, followed by a massive list that you want to be clusterized (but not scrollable itself). This makes that work, by taking into account the offsetTop of the clustered content within the scrollable container, so that the correct cluster number is used. I had this problem with my website, and found the solution in pull request #103 (thanks @vsesh for figuring it out). This version is based on the latest version of the library and has been simplified to only modify one line. Works like a charm on my site. Note, no minified version in this pull request. --- clusterize.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/clusterize.js b/clusterize.js index 0682267..1de7429 100644 --- a/clusterize.js +++ b/clusterize.js @@ -195,7 +195,7 @@ }, // get current cluster number getClusterNum: function () { - this.options.scroll_top = this.scroll_elem.scrollTop; + this.options.scroll_top = this.scroll_elem.scrollTop - this.content_elem.offsetTop; return Math.floor(this.options.scroll_top / (this.options.cluster_height - this.options.block_height)) || 0; }, // generate empty row if no data provided @@ -328,4 +328,4 @@ } return Clusterize; -})); \ No newline at end of file +}));