// ==UserScript== // @name 简单搜索自动展开 // @description 自动展开简单搜索的结果,避免需要多次点击“加载更多”按钮。 // @author ChatGPT // @version 2.0 // @match https://m.baidu.com/* // @match https://www.baidu.com/* // @grant none // @namespace https://greasyfork.org/users/452911 // @downloadURL none // ==/UserScript== (function() { 'use strict'; if (navigator.userAgent.includes('SearchCraft')) { function click() { // 获取 infinite scroll 元素 const infScroll = document.querySelector('span.se-infiniteload-more'); // 监听窗口滚动事件 window.addEventListener('scroll', () => { // 检查 infinite scroll 元素是否可见并单击它(仅当已经滚动到页面底部时) if ( (window.innerHeight + window.pageYOffset) >= (document.body.offsetHeight - 100) && infScroll && infScroll.offsetParent !== null ) { infScroll.click(); } }); const loadMoreButton = document.querySelector('span.se-infiniteload-more'); loadMoreButton.addEventListener('click', function() { window.setTimeout(click,3000); }); } click(); } let startY; window.addEventListener('touchstart', function(event) { // 记录触摸开始时的 Y 坐标 startY = event.touches[0].pageY; }); window.addEventListener('touchmove', function(event) { // 计算当前触摸位置与触摸开始时的位置差值 let deltaY = event.touches[0].pageY - startY; // 如果手指向上滑动了一定距离,则触发弹出对话框的操作 if (deltaY < -30) { // 获取span.se-infiniteload-more元素 const moreBtn = document.querySelector('span.se-infiniteload-more'); // 触发点击事件 moreBtn.click(); } }); })();