数码之家

标题: 油猴脚本增强论坛搜索功能,缺家元的一定进来看看! [打印本页]

作者: fmjz    时间: 2025-2-26 09:46
标题: 油猴脚本增强论坛搜索功能,缺家元的一定进来看看!
大家好!初到论坛,发现家元总是攒不起来,不仅每天登录要扣家元,

搜索一次也要扣2家元,对于我这种经常搜索的人就很亏了,

因此开发了一个油猴脚本,实现在原有的搜索按钮前添加一个我们自己的搜索按钮,用这个按钮搜索不会被扣家元,日积月累下来也能节省不少!


下面贴出效果图与代码,各位可自行测试,默认是谷歌搜索,也可自行更换成喜欢的搜索引擎。

安装方法:安装油猴,添加新脚本,全部复制下方的代码,粘贴保存,回到论坛刷新页面,如果出现如图所示的按钮即为成功。

使用方法:与平常一样,在搜索框输入要搜索的关键词,然后回车或者点击“谷歌搜索”即可,如果点放大镜就是原本的论坛搜索。


如有违规,请管理员予以删除,谢谢。

[attach]2341211[/attach]
效果图

// ==UserScript==
// @name         数码之家搜索替换
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  在搜索按钮左侧添加一个新的按钮并进行谷歌搜索避免消耗家元
// @author       fmjz
// @match        https://www.mydigit.cn/forum.php
// @match        https://www.mydigit.cn/**
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // 确保页面完全加载后再执行脚本
        // 查找现有的搜索按钮
        var searchButton = document.getElementById('scbar_btn');
        if (searchButton) {
            // 创建新的按钮
            var newButton = document.createElement('button');
            newButton.type = 'button';  // 设置按钮类型为普通按钮
            newButton.className = 'pn pnc';  // 保持原样的按钮样式
            newButton.innerHTML = '<strong class="xi2" style="color:green">谷歌搜索</strong>';  // 设置按钮文本

            // 设置新按钮样式
            newButton.style.margin = '0';
            newButton.style.padding = '0 10px';  // 设置左右内边距,保持高度为 30px
            newButton.style.border = '1px solid #ccc';  // 设置边框颜色为浅灰色
            newButton.style.background = '#ffffff';  // 设置背景色为白色
            newButton.style.color = '#000000';  // 设置文字颜色为黑色
            newButton.style.boxShadow = 'none';
            newButton.style.display = 'inline-block';  // 保证按钮并排显示
            newButton.style.verticalAlign = 'middle';  // 保证垂直居中
            newButton.style.borderRadius = '4px';  // 圆角按钮样式
            newButton.style.cursor = 'pointer';  // 鼠标悬停时显示指针

            // 设置按钮的固定高度和垂直居中的文字
            newButton.style.height = '30px';  // 设置按钮高度为 30px
            newButton.style.lineHeight = '30px';  // 设置行高为 30px,确保文字垂直居中

            // 为新按钮添加点击事件
            newButton.addEventListener('click', function() {
                // 获取文本框的值
                var searchText = document.getElementById('scbar_txt').value;

                // 构造谷歌搜索URL
                var searchUrl = 'https://www.google.com/search?q=' + encodeURIComponent(searchText + ' site:www.mydigit.cn');
                // bing搜索
                //var searchUrl = 'https://www.bing.com/search?q=' + encodeURIComponent(searchText + ' site:www.mydigit.cn');

                // 打开搜索结果
                window.open(searchUrl, '_blank');
            });

            // 创建一个新的 td 元素并把新按钮放进去
            var newTd = document.createElement('td');
            newTd.className = 'scbar_btn_td1';  // 修改 td 的类名
            newTd.appendChild(newButton);

            // 获取按钮的父元素
            var parentTr = searchButton.closest('tr');  // 获取父 <tr> 元素
            if (parentTr) {
                // 获取当前的 scbar_btn_td
                var currentTd = searchButton.closest('td');

                // 将新的 td 插入到现有 td 之前
                parentTr.insertBefore(newTd, currentTd);
            }

            // 监听文本框的 Enter 键事件
            var searchTextField = document.getElementById('scbar_txt');
            if (searchTextField) {
                searchTextField.addEventListener('keydown', function(event) {
                    // 检查是否按下了 Enter 键
                    if (event.key === 'Enter') {
                        // 触发新按钮的点击事件
                        newButton.click();
                    }
                });
            }
        }
})();





作者: 猪小呆    时间: 2025-2-26 11:25
可以把这个脚本改成从自己设置的论坛黑名单读取吗?
https://www.mydigit.cn/thread-502009-1-1.html

自己的黑名单列表地址:
https://www.mydigit.cn/home.php? ... &view=blacklist
作者: qm111    时间: 2025-2-26 11:28
呵呵,这个好。。
作者: silverliu    时间: 2025-2-26 11:35
本帖最后由 silverliu 于 2025-2-26 11:45 编辑

人和人是完全不一样的,   

有的朋友 脑壳就是聪明,  会电子电路,  会万用表,  会发大量的作品,   家元都是几万十几万的.

另外的大众都是看客,  羡慕啊,  问题 ,技术不灵光,   只能会鼓掌........,  不是大众不想学 是完美没法成专家.........

@家睦


@家睦


[attach]2341318[/attach]

作者: 温柔背后    时间: 2025-2-26 11:44
EDGE添加了脚本,刷新没啥变化
作者: 温柔背后    时间: 2025-2-26 11:45
是哪里不对吗?
作者: fmjz    时间: 2025-2-26 11:48
温柔背后 发表于 2025-2-26 11:45
是哪里不对吗?

在论坛的页面,点击油猴的插件,看有没有显示这个脚本?如图所示
作者: michaelx007    时间: 2025-2-26 11:49
希望别被管理员看到
作者: fmjz    时间: 2025-2-26 13:44
猪小呆 发表于 2025-2-26 11:25
可以把这个脚本改成从自己设置的论坛黑名单读取吗?
https://www.mydigit.cn/thread-502009-1-1.html

技术上可以,让脚本自动访问这个地址,把用户ID给记录下来
作者: kenwa    时间: 2025-2-26 14:40
这个好,但应该可以不用这么麻烦的,直接site:mydigit.cn就行
作者: fmjz    时间: 2025-2-26 16:11
kenwa 发表于 2025-2-26 14:40
这个好,但应该可以不用这么麻烦的,直接site:mydigit.cn就行

原理是这样滴,但是单独输入这个就比较麻烦,搞到这里就很方便
作者: fmjz    时间: 2025-2-26 16:13
michaelx007 发表于 2025-2-26 11:49
希望别被管理员看到

管理员审核通过了,应该没事吧?
作者: tiantiankeke    时间: 2025-2-28 09:43
直接用bing 后面加site:不就可以了?
作者: 温柔背后    时间: 2025-2-28 16:18
fmjz 发表于 2025-2-26 11:48
在论坛的页面,点击油猴的插件,看有没有显示这个脚本?如图所示

知道了,必须开启浏览器的开发者模式才行,谢谢
作者: wang立军    时间: 2025-2-28 16:52
希望别被管理员看到,谢谢楼主分享。
作者: fmjz    时间: 2025-2-28 17:37
tiantiankeke 发表于 2025-2-28 09:43
直接用bing 后面加site:不就可以了?

可以的,但是我这样方便浏览论坛的时候直接搜索了,符合原来的操作习惯
作者: fmjz    时间: 2025-2-28 17:38
温柔背后 发表于 2025-2-28 16:18
知道了,必须开启浏览器的开发者模式才行,谢谢

不客气,
作者: lqs1234    时间: 2025-2-28 21:34
真是牛人,会写代码可以做不少事,干吗不直接弄个代码给自已加个50万的家元呢?
作者: gyzhaohang    时间: 2025-3-2 15:14
kenwa 发表于 2025-2-26 14:40
这个好,但应该可以不用这么麻烦的,直接site:mydigit.cn就行

小白不太明白。是在哪里输入site:mydigit.cn啊?
作者: JPK6ty    时间: 2025-3-2 21:54
这个真的不错




欢迎光临 数码之家 (https://www.mydigit.cn/) Powered by Discuz! X3.4