From 9edddfb39c28248389dacea8247cfbb79633dc45 Mon Sep 17 00:00:00 2001 From: Bryce Kwon Date: Sat, 31 Oct 2026 13:17:02 -0700 Subject: Stop skipping ages as they change unit getElementsByClassName returns a live collection, so an age moved to the next unit dropped out of it mid-loop and the age after it was skipped until the next pass, which can be a day away. On a cached page that has crossed a unit boundary every second age stayed stale. querySelectorAll returns a static list of the same elements. --- assets/cgit.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'assets/cgit.js') diff --git a/assets/cgit.js b/assets/cgit.js index 90f06c0..d09423f 100644 --- a/assets/cgit.js +++ b/assets/cgit.js @@ -67,7 +67,7 @@ function update_ages() { var now = Math.round(new Date().getTime() / 1000); for (bucket = 0; bucket < age_classes.length; bucket++) { - elements = document.getElementsByClassName(age_classes[bucket]); + elements = document.querySelectorAll("." + age_classes[bucket]); if (elements.length && update_delay[bucket] < delay) delay = update_delay[bucket]; -- cgit