您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Automatically loads more Gab.ai content when you scroll to the ended of the loaded content.
当前为
// ==UserScript== // @name Gab.ai Endlessly Scrollable Content // @namespace http://gab.ai/Jeremy20_9 // @version 0.3 // @description Automatically loads more Gab.ai content when you scroll to the ended of the loaded content. // @author Jeremiah 20:9 // @match https://gab.ai // @match https://gab.ai/* // @grant none // ==/UserScript== var itvwait = -1; var clicked = false; $(document).ready(function(){ $(window).scroll(function(){ if(clicked) return; var posts = $("post"); if(posts.length < 2) return; var elem = $("a.post-list__load-more:last")[0]; if(elem !== undefined && elementInViewport(elem)) { // http://stackoverflow.com/a/27761213/2381712 var evt = new MouseEvent("click", { view: window, bubbles: true, cancelable: true, clientX: 20 }); var ele = $("a.post-list__load-more")[0]; ele.dispatchEvent(evt); clicked = true; itvwait = setTimeout(function(){clicked = false;}, 3000); } }); }); // http://stackoverflow.com/questions/123999/how-to-tell-if-a-dom-element-is-visible-in-the-current-viewport function elementInViewport(el) { var top = el.offsetTop; var left = el.offsetLeft; var width = el.offsetWidth; var height = el.offsetHeight; while(el.offsetParent) { el = el.offsetParent; top += el.offsetTop; left += el.offsetLeft; } return ( top >= window.pageYOffset && left >= window.pageXOffset && (top + height) <= (window.pageYOffset + window.innerHeight) && (left + width) <= (window.pageXOffset + window.innerWidth) ); }