5月18 更新 修复了一些网页的bug(日志,任务) 名称:
功能: 点击勋章图片,自动搜索 禁止GM本身“点击勋章跳转勋章商城”
优化内容: 直接使用高级搜索 “全文”“勋章博物馆” 过滤了一些非勋章图片(例如表情,头像,帖内图片等) 搜索时去除一些符号和内容
使用方法: 导入油猴,暴力猴之类的插件里
建议: 发现没搜到的勋章, 在找到帖子后,可以把名字回复/补充到对应帖子,方便之后的村民
- // ==UserScript==
- // @name GM勋章搜索
- // @version 0.14
- // @author M
- // @grant GM_openInTab
- // @match https://www.gamemale.com/*
- // ==/UserScript==
- (function() {
- 'use strict';
- var currentUrl = window.location.href;
- var isForumPage = currentUrl.startsWith('https://www.gamemale.com/forum.php') && !currentUrl.includes('?');
- var isReplyPage = currentUrl.includes('https://www.gamemale.com/reply');
- var isTaskPage = currentUrl.includes('https://www.gamemale.com/home.php?mod=task');
- var isSpacePage = currentUrl.includes('https://www.gamemale.com/home.php?mod=space');
- if (!isReplyPage && !isTaskPage && !isSpacePage && !currentUrl.includes('https://www.gamemale.com/blog')) {
- if (isForumPage) {
- return;
- }
- // 获取所有图片
- var imagesParent = document.body;
- imagesParent.addEventListener('click', function(event) {
- var target = event.target;
- // 判断点击的元素是否为有 alt 属性的图片
- if (target.tagName.toLowerCase() === 'img' && target.hasAttribute('alt') && !/\.(jpg|jpeg|png|gif|bmp)$/.test(target.getAttribute('alt')) && !/^[;::]/.test(target.getAttribute('alt'))) {
- var name = target.getAttribute('alt');
- var cleanedName = name.replace(/[,,『』]/g, '').replace(/【.*?】/g, '').replace(/[\'"\‘\’\“\”]/g, '').trim(); //去除符号
- if (cleanedName) {
- var searchUrl = 'https://www.gamemale.com/search.php?mod=forum&adv=yes&searchsubmit=yes&srchtxt=' + encodeURIComponent(cleanedName) + '&srchtype=fulltext&srchfid[]=138';
- GM_openInTab(searchUrl, {active: true});
- event.preventDefault();
- }
- }
- });
- }
- // 高级搜索设置
- function selectMuseumAndGuild() {
- var searchForm = document.querySelector('#scbar_form');
- if (searchForm) {
- var museumCheckbox = searchForm.querySelector('input[name="srchfid[]"][value="138"]');
- if (museumCheckbox) {
- museumCheckbox.checked = false;
- }
- var guildCheckbox = searchForm.querySelector('input[name="srchfid[]"][value="2"]');
- if (guildCheckbox) {
- guildCheckbox.checked = true;
- }
- }
- }
- if (location.pathname === '/search.php') {
- selectMuseumAndGuild();
- autoOpenSingleResult();
- }
- })();
复制代码
|