// ==UserScript== // @name 天涯小助手 // @namespace http://tampermonkey.net/ // @version 0.15 // @description 5个功能:只看楼主,展开评论,隐藏掉帖子中的红包、打赏、废话和只有英文数字的楼层,去广告,显示头像 // @require https://code.jquery.com/jquery-2.1.4.min.js // @author 高压锅 // @include http*://bbs.tianya.cn/post-* // @grant GM_setValue // @grant GM_getValue // @downloadURL none // ==/UserScript== (function () { $('script[src="https://d31qbv1cthcecs.cloudfront.net/atrk.js"]').remove(); var gyg_filter_garbage = GM_getValue('filter_garbage', '1') == '1'; var gyg_expand_comments = GM_getValue('expand_comments', '1') == '1'; var gyg_see_only_host = GM_getValue('see_only_host', '0') == '1'; var gyg_disp_avatar = GM_getValue('disp_avatar', '0') == '1'; var hostid = $('.js-bbs-act').attr('_host'); $('head').append(''); $('head').append(''); $('div[id^="js-tybc-"],.vip-read,.see-host,div.ads-loc-holder,div.post-area-adv,.host-stocks,#niuren_ifm,#host_per_info').remove(); $('.read-menu').first().append(''); var ks = [ '
', 'mark', '记号', '马克', '兰州烧饼', '(早|晚)上好', '(上|中|下)午好', '(早|晚)安', '(好|顶)(帖|贴)', '催更', '顶一下', '帮顶', '点赞', '赞同', '安全点赞区', '翻页', '顶(起|贴|帖)', '(支持|学习)(一下|楼主)?', '快更', '等更', '坐等更', '路过', '楼主', '加油', '继续', '(节日|新年|春|元旦|国庆|端午|中秋|仲秋|元宵|情人|父亲|母亲|七夕|重阳|除夕|龙舟|清明|腊八|小年|周末|儿童|六一|五四|五一|劳动|青年|妇女|三八)节?(快乐|安康|愉快)', '火(钳|前)|(留|刘)(名|明|翔)', '打卡', '谢谢', '感(谢|恩)', '看看', '试试', '呵呵', '哈哈', '恭喜', '前排', '占座', '沙发', '板凳', '占个?座位?', '欢迎', '先顶再看', '拭目以待', '师母已呆', '(收藏|关注|厉害|辛苦|学习)了?', '酱油', '牛(逼|批|b)', '精辟', '已阅', '膜拜', '(有点|几个|什么)意思' ]; var re = new RegExp(ks.join('|'), 'ig'); $('#filter-garbage').click(function () { gyg_filter_garbage = !gyg_filter_garbage; resort(); GM_setValue('filter_garbage', gyg_filter_garbage ? '1' : '0'); $(this).blur(); }); $('#see-only-host').click(function () { gyg_see_only_host = !gyg_see_only_host; resort(); GM_setValue('see_only_host', gyg_see_only_host ? '1' : '0'); $(this).blur(); }); $('#disp-avatar').click(function () { gyg_disp_avatar = !gyg_disp_avatar; resort(); GM_setValue('disp_avatar', gyg_disp_avatar ? '1' : '0'); $(this).blur(); }); function resort() { var aHidden = new Array(); if (gyg_filter_garbage) { aHidden.push('[garbage="1"]'); } if (gyg_see_only_host) { aHidden.push('[ishost="0"]'); } $('div.atl-item').each(function () { var jThis = $(this); jThis.is(aHidden.join(',')) ? jThis.hide() : jThis.show(); }); gyg_disp_avatar ? $('.logo_inline').show() : $('.logo_inline').hide(); } $('#expand-comments').click(function () { $(this).blur(); gyg_expand_comments = !gyg_expand_comments; $('a.ir-showreply[yh_cmt_btn="1"]').each(function () { $(this)[0].click(); }); GM_setValue('expand_comments', gyg_expand_comments ? '1' : '0'); }); $('body').on('DOMSubtreeModified', '.ir-list ul', function (e) { var evt = e || window.event; var t = $(evt.target); if (t.html() != '') { t.find('li').each(function () { $(this).find('p a').first().prepend(''); }); } }); $('div.atl-item').each(function () { var jThis = $(this); var _hostid = jThis.attr('_hostid'); jThis.attr('ishost', _hostid == hostid ? '1' : '0'); jThis.find('div.atl-info span').first().prepend(''); if (jThis.find('div.red-pkt-v2').length > 0 || jThis.find('a.dashang-btn').length > 0) { jThis.attr('garbage', '1'); return; } //alert(jThis.find('ir-list li').length); jThis.find('.ir-list li').each(function () { $(this).find('p a').first().prepend(''); }); var jReply = jThis.find('a.ir-showreply'); if (jReply.length > 0) { jThis.attr('garbage', '0'); jReply.attr('yh_cmt_btn', '1'); if (gyg_expand_comments) { jReply[0].click(); } return; } var dry = $.trim(jThis.find('div.bbs-content').first().html().replace(re, '')).replace(/([·…!?!?\n。、.~~,,顶 ])\1+/g, '$1').replace(/[·…!?!?\n。、.~~,,顶 ]+$/, '').replace(/^[·…!?!?\n。、.~~,,顶 ]+/, ''); if (dry.length < 4 || /^[a-zA-Z0-9]+$/.test(dry)) { jThis.attr('garbage', '1'); } }); resort(); })();