您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
1, 屏蔽指定用户的所有发帖 2 ,排序(按回复)),具体看下面仔细描述
// ==UserScript== // @name 贴吧助手(屏蔽,排序) beta // @namespace http://tampermonkey.net/ // @version 1.1.1 // @description 1, 屏蔽指定用户的所有发帖 2 ,排序(按回复)),具体看下面仔细描述 // @author You // @match https://tieba.baidu.com/** // @grant GM_setValue // @grant GM_getValue // @run-at document-idle // ==/UserScript== //修复翻页后屏蔽无效的bug //修复翻页后x按钮消失 //其他小bug (function() { //需先其他js执行后 执行才可获取到dom setTimeout(function(){ //屏蔽模块 (function(){ //隐藏 指定数组(如 [{"user_id":1370621204},{},{} ]格式 )里的所有用户 的主题 //初始化屏蔽......................... var userIds=GM_getValue("pbUserIds");//获取屏蔽用户数据 console.log("屏蔽用户",userIds); if(!userIds){ userIds=[]; } hideIt(userIds);//开始屏蔽 initXbutton();//x按钮 initDelpinbi();//取消屏蔽按钮 bindPageMenu();//底部翻页按钮按钮绑定事件触发继续屏蔽 //........................初始化屏蔽 function hideIt(array){ var count=0; $("span.tb_icon_author").each(function(){ var spanTb=this; try{ var value2=$(this).data("field").user_id; } catch(e){ return; } array.forEach(function(item,index,array){ var value=item.user_id; if(value==value2){ $(spanTb).closest("li.j_thread_list.clearfix").hide(); count++; } }); }); console.log("屏蔽条数:",count); } //初始化自定义屏蔽按钮 function initXbutton(){ $(".frs-author-name-wrap a").after($("<button class='xButton'>x</button>")); $(".xButton").click(function(){ var targetUserid=$(this).closest("span.tb_icon_author").data("field"); userIds.push(targetUserid); GM_setValue("pbUserIds",userIds); hideIt([targetUserid]); }); } // 初始化 定义清除 屏蔽用户按钮 function initDelpinbi(){ $li=$("<li class='j_tbnav_tab'><a href='#'>取消屏蔽</a></li> "); $("ul.nav_list.j_nav_list").append($li); $li.click(function(){ var qxid=prompt("输入取消屏蔽的用户id","all代表全部清楚"); if(!qxid){ return; } if(qxid=="all"){ GM_setValue("pbUserIds",[]); alert("刷新后生效"); return; } var qxcout=0; userIds.forEach(function(item,index,array){ if(item.user_id==qxid){ array.splice(index,1); qxcout++; } }); GM_setValue("pbUserIds",userIds); alert("取消屏蔽用户数量:"+qxcout+",刷新后生效"); }); } // 翻页后 屏蔽 pagination-item function bindPageMenu(){ $("#frs_list_pager a").each(function(){ $(this).click(function(){ setTimeout(function(){ hideIt(GM_getValue("pbUserIds")); initXbutton(); bindPageMenu(); },3000); }); }); } //排序模块 (function(){ $li=$("<li class='j_tbnav_tab'><a href='#'>按回复量排序</a></li> "); $("ul.nav_list.j_nav_list").append($li); $li.click(function(){ var $lis=$("li.j_thread_list.clearfix");//获取所有排序的li var liArray=[]; //用于排序的容器 $lis.each(function(index,item){ var replyCount=$(item).find("span.threadlist_rep_num.center_text").text(); liArray.push({'count':replyCount,'li':item}); }); liArray.sort(function(a,b){ return b.count-a.count; }); console.log("排序后:",liArray); $("#thread_list").empty(); $(liArray).each(function(index,item){ $("#thread_list").append(item.li); }); //排序后 重新绑定懒加载图片 $(".thumbnail.vpic_wrap>img").lazyload(); }); })(); })(); },3000); // Your code here... })();