您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Prevent scrolling issues when page is resized by loading images
当前为
// ==UserScript== // @name Smart scrolling // @namespace [email protected] // @description Prevent scrolling issues when page is resized by loading images // @include * // @version 1.4 // @grant none // @run-at document-start // ==/UserScript== (function() { var hash = location.hash.replace("#", ""); if(hash) { var scrollListener = function() {removeEventListener("wheel", scrollListener); hash = "";}; addEventListener("wheel", scrollListener); } var images; var update = function() { var scrollY = 0, ready = document.readyState == "complete", elem; if(hash) { elem = document.getElementById(hash) || document.getElementsByName(hash)[0]; if(elem) scrollY = Math.round(elem.getBoundingClientRect().top); } else if(document.readyState == "interactive") { if(!images) images = [].slice.call(document.getElementsByTagName("IMG")); var overflows = ["auto", "scroll"], data, rect, height; for(var i = 0; i < images.length; i++) { if(!images[i].zssData) images[i].zssData = {}; data = images[i].zssData; if(ready) delete images[i].zssData; if(data.complete) continue; rect = images[i].getBoundingClientRect(); height = Math.max(data.height || 0, Math.round(rect.bottom - rect.top)); if(isNaN(data.height)) { if(images[i].complete || !images[i].offsetParent || getComputedStyle(images[i]).position == "fixed") data.complete = true; else data.height = height; } else if(data.height != height) { data.complete = true; if(rect.top >= 0) continue; elem = images[i]; while(true) { elem = elem.parentNode; if(elem == document.body) { scrollY += height - data.height; break; } else if(overflows.includes(getComputedStyle(elem).overflow)) { elem.scrollTop += height - data.height; break; } } } } } if(scrollY !== 0) scrollBy(0, scrollY); if(!ready) requestAnimationFrame(update); }; update(); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址