斗鱼(广告/活动/弹幕)屏蔽

屏蔽部分斗鱼直播间无意义广告、活动、弹幕

目前為 2018-10-27 提交的版本,檢視 最新版本

// ==UserScript==
// @name         斗鱼(广告/活动/弹幕)屏蔽
// @namespace    http://tampermonkey.net/
// @version      0.0.23
// @description  屏蔽部分斗鱼直播间无意义广告、活动、弹幕
// @author       hulala
// @match        *://www.douyu.com/*
// @require      //cdn.staticfile.org/jquery/1.12.4/jquery.min.js
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    var $hl = jQuery.noConflict(true);
    var time = 0;
    var binded = false;
    
    var HULALA_HIDE = new Array(
        ".room-ad-video-down",
        ".valentine1807",
        ".adsRoot_7c5z4",
        ".chat-ad",
        "#js-annual1809",
        ".Annual1809",
        ".room-ad-bottom",
        "#js-chat-notice",
        ".column.rec",
        "#js-recommand",
        ".recommendAD-824567",
        ".recommendApp-cbeff7",
        ".broadcastDiv-343e1a",
        ".PaladinPop",
        ".no-login",
        "#js-annual1809",
        ".Annual1809-gifttip",
        ".giftbatter-noble-enter",
        ".Bottom"
    );
    
    var HULALA_DEL = new Array(
        "#js-annual1809",
        "#js-room-activity",
        ".ACT110913",
        ".giftbatter-box",
        ".Bottom"
    );

    var removeAD = function(){
        var gifts = $hl("#listId").parent().parent();
        var chat = $hl(".PlayerCaseSub-Main.is-unlogin");

        for (var i = 0;i<HULALA_HIDE.length; i++){
            $hl(HULALA_HIDE[i]).css("display", "none");
        }

        for (var i = 0;i<HULALA_DEL.length; i++) {
            $hl(HULALA_DEL[i]).remove();
        }

        gifts.css("display","none");
        chat.css("top", "0px");
    }
    

    removeAD();

    var timer = window.setInterval(function() {
        removeAD();
        time++;
        if(time >= 15 && timer) {
            window.clearInterval(timer);
            timer = null;
        }
    }, 3000);
 
    var removeWelcome = function(){
        if(binded){
          return;
        }
        var chatlist = $hl('.layout-Player-aside');
        chatlist.on("DOMNodeInserted", "#js-barrage-list", function(e){
          var node = e.target;
          if (node.tagName === 'LI') {
              if (node.innerText.indexOf('欢迎来到本直播间') !== -1) {
                  $hl(node).remove();
              }
              if (node.innerText.indexOf('赠送给主播') !== -1) {
                  $hl(node).remove();
              }
          }
        });
        binded = true;
    }
    window.setInterval(function(){removeWelcome()}, 1000);
})();