您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Quick scroll to next/previous image on a page with f/r buttons
- // ==UserScript==
- // @name Next Previous Image Key Navigation
- // @author waka <me@waka.name>
- // @namespace http://waka.name/
- // @version 1.0.1
- // @description Quick scroll to next/previous image on a page with f/r buttons
- // @include *
- // ==/UserScript==
- (function(){
- var sizeLimit = 200;
- var rButton = 114;
- var fButton = 102;
- var positions = [];
- var offsetshift = 0;
- //shift pixels down to avoid floating bars - format: domain,pixels,domain,pixels,...
- //example: http://foo.example.com/ -> domain=example - assume 25 pixels shift -> ,"example","25"
- var shift=["facebook","40","sankakucomplex","25","soup","34","reddit","50"];
- document.addEventListener('keypress', keypressHandler, false);
- function keypressHandler(event){
- if (event.ctrlKey || event.shiftKey || event.altKey) return;
- if (event.target.tagName && event.target.tagName.match(/input|select|textarea/i)) return;
- var code = event.keyCode || event.which;
- if (code != rButton && code != fButton) return;
- if (positions.length < document.images.length) {
- positions = [];
- for (var index = 0; index < document.images.length; index++) {
- var image = document.images[index];
- if (Math.min(image.width, image.height) < sizeLimit) continue;
- positions.push(getYOffset(image));
- }
- }
- var scroll = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
- positions = positions.sort(sort);
- var next = true;
- if (code == rButton) {
- positions = positions.reverse();
- next = false;
- }
- var domain = window.location.host.split('.')[1];
- var length = shift.length,
- element = null;
- for (var i = 0; i < length; i++) {
- element = shift[i];
- // Do something with element i.
- if (domain == element) {
- p = i + 1;
- offsetshift = shift[p];
- }
- i++;
- }
- for (index = 0; index < positions.length; index++) {
- var offset = positions[index] - offsetshift;
- if ((next && offset <= scroll) || (!next && offset >= scroll)) continue;
- scrollTo(offset, scroll);
- return;
- }
- }
- function scrollTo(offset, currentScroll) {
- if (currentScroll == document.documentElement.scrollTop) {
- document.documentElement.scrollTop = offset;
- } else {
- document.body.scrollTop = offset;
- }
- }
- function getYOffset(node) {
- for (var offset = 0; node; offset += node.offsetTop, node = node.offsetParent);
- return offset;
- }
- function sort(a, b) { return a < b ? -1 : 1; }
- })()
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址