// ==UserScript== // @name 米游社快捷关闭评论和切换图片 // @namespace http://tampermonkey.net/ // @version 2.3 // @description 按esc或者鼠标点击空白处,快捷关闭米游社点开的评论;滚动鼠标滚轮时切换图片而不关闭它们;修复切换图片时点击箭头图标没反应的bug。 // @author coccvo // @match https://www.miyoushe.com/* // @icon https://img2.doubanio.com/lpic/s33798163.jpg // @grant none // @license MIT // @downloadURL none // ==/UserScript== (function() { 'use strict'; // 修复切换图片时点击箭头图标没反应的bug document.addEventListener('click', function(e) { if (e.target.classList.contains('icon-fanhui') || e.target.classList.contains('icon-xiaojiantou')) { var button = e.target.closest('button'); if (button) { button.click(); } } }, false); document.body.addEventListener('keydown', e => { // Esc关闭展开的评论 if (event.key === 'Escape') { const closeBon = document.querySelector('pswp__button pswp__button--close'); closeBon.click(); } }); document.body.addEventListener('keydown', e => { if (event.key === 'Escape') { const closeButton = document.querySelector('.mhy-button.mhy-action-sheet__close.mhy-button-default'); closeButton.click(); } }); document.addEventListener('click', e => { // 检查点击是否发生在评论展开按钮上 if (e.target.matches('.reply-card-inner-reply__detail')) { return; } // 检查评论是否展开、点击是否发生在主体之外 if (document.querySelector('.mhy-action-sheet.reply-detail-action-sheet').getAttribute('style') !== 'display: none;' && !e.target.closest('.mhy-action-sheet__body')) { const closeButton2 = document.querySelector('.mhy-button.mhy-action-sheet__close.mhy-button-default'); closeButton2.click(); } }); // 防止滚动时关闭图片 document.addEventListener('wheel', function(e) { if (e.target.classList.contains('pswp__img') || e.target.closest('.pswp__scroll-wrap')) { e.stopPropagation(); // 检测滚轮方向 var delta = e.wheelDelta || -e.deltaY; // 向后滚动,显示下一张图片 if (delta < 0) { var nextButton = document.querySelector('.pswp__button--arrow--right'); if (nextButton) { nextButton.click(); } } // 向前滚动,显示上一张图片 else { var prevButton = document.querySelector('.pswp__button--arrow--left'); if (prevButton) { prevButton.click(); } } } }, true); })();