Greasy Fork is available in English.

天涯小助手

4个功能:只看楼主、展开评论、隐藏掉帖子中的红包、打赏、废话和只有英文数字的楼层、去广告

Verzia zo dňa 07.06.2019. Pozri najnovšiu verziu.

// ==UserScript==
// @name         天涯小助手
// @namespace    http://tampermonkey.net/
// @version      0.13
// @description  4个功能:只看楼主、展开评论、隐藏掉帖子中的红包、打赏、废话和只有英文数字的楼层、去广告
// @require      https://code.jquery.com/jquery-2.1.4.min.js
// @author       高压锅
// @include      http*://bbs.tianya.cn/post-*
// @grant GM_setValue
// @grant GM_getValue
// ==/UserScript==

(function() {
    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 hostid = $('.js-bbs-act').attr('_host');

    $('head').append('<style type="text/css">.ds_vip_seats,#ty_msg_mod,#shang-move,#ds-quick-menu{display:none!important;}</style>');
    $('.vip-read,.see-host,div.ads-loc-holder,div.post-area-adv').remove();
    $('.read-menu').first().append('<input type="checkbox" id="filter-garbage"'+(gyg_filter_garbage?' checked="checked"':'')+' /><label for="filter-garbage">脱水</label><input type="checkbox" id="expand-comments"'+(gyg_expand_comments?' checked="checked"':'')+' /><label for="expand-comments">展开评论</label><input type="checkbox" id="see-only-host"'+(gyg_see_only_host?' checked="checked"':'')+' /><label for="see-only-host">只看楼主</label>');
    var re = new RegExp('<br>|mark|记号|马克|兰州烧饼|(早|晚)上好|(上|中|下)午好|(早|晚)安|(好|顶)(帖|贴)|催更|顶一下|帮顶|点赞|安全点赞区|翻页|顶(起|贴|帖)|支持(一下|楼主)|快更|等更|坐等更|路过|楼主|加油|继续|(节日|新年|春节|元旦|国庆|端午|中秋|仲秋)(快乐|安康|愉快)|火(钳|前)|(留|刘)(名|明)|打卡|学习了|谢谢|感(谢|恩)|看看|试试|呵呵|哈哈|恭喜|前排|占座|沙发|板凳|欢迎', 'ig');
    $('#filter-garbage').click(function() {
        gyg_filter_garbage = !gyg_filter_garbage;
        resort();
        GM_setValue('filter_garbage', gyg_filter_garbage ? '1' : '0');
    });
    $('#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');
    });
    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();
        });
    }
    $('#expand-comments').click(function() {
        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');
    });
    $('div.atl-item').each(function() {
        var jThis = $(this);
        jThis.attr('ishost', jThis.attr('_hostid') == hostid ? '1' : '0');

        if (jThis.find('div.red-pkt-v2').length > 0 || jThis.find('a.dashang-btn').length > 0) {
            jThis.attr('garbage', '1');
            return;
        }
        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();
})();