屏蔽知乎/CSDN登录弹窗、简书抽奖框

屏蔽知乎/CSDN登录弹窗、简书登录弹窗三合一

目前為 2021-06-09 提交的版本,檢視 最新版本

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name         屏蔽知乎/CSDN登录弹窗、简书抽奖框
// @namespace    http://tampermonkey.net/
// @version      1.3
// @description  屏蔽知乎/CSDN登录弹窗、简书登录弹窗三合一
// @author       leekbillow
// @match        https://*.zhihu.com/*
// @match        https://*.blog.csdn.net/*
// @match        https://*.jianshu.com/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    switch(true)
    {
        case /\bblog\.csdn\.net\b(?!\.)/.test(location.hostname):
        {
            // CSDN
            let csdnStyle=document.createElement('style');
            csdnStyle.classList.add('Tampermonkey');
            csdnStyle.innerHTML=`
            .login-mark,
            #passportbox,
            .toolbar-advert
            {
                display:none!important
            }`;
            document.head.append(csdnStyle);
            break;
        }
        case /\bzhihu\.com\b(?!\.)/.test(location.hostname):
        {
            // 知乎
            //添加限制样式
            let bhuStyle=document.createElement('style');
            bhuStyle.classList.add('Tampermonkey');
            bhuStyle.innerHTML=`
            .Modal-wrapper,
            .Modal-backdrop,
            .signFlowModal
            {
                display:none!important;
            }`;
            document.head.append(bhuStyle);
            //取消首次自动弹出登录框,解除监听
            let removeStyle=function(){bhuStyle.remove();},
                targetNode = document.body,
                observerOptions=
                {
                    childList: true,
                    subtree: true
                },
                observer = new MutationObserver(function(mutationList,observer)
                {
                    let rubbishDialogClose=document.querySelector('.Modal-closeButton');
                    if(rubbishDialogClose)
                    {
                        observer.disconnect();
                        rubbishDialogClose.click();
                        let loginButton=document.querySelector('.AppHeader-login');
                        loginButton && (loginButton.onclick=()=>removeStyle());
                    }
                    else return;
                });
            observer.observe(targetNode, observerOptions);
            //3秒后移除监听
            setTimeout(()=>(observer.disconnect(),removeStyle()),3000);
            break;
        }
        case /\bjianshu\.com\b(?!\.)/.test(location.hostname):
        {
            // 简书
            let jianshuStyle=document.createElement('style');
            jianshuStyle.classList.add('Tampermonkey');
            jianshuStyle.innerHTML=`
            ._1aCo37-mask,
            ._1aCo37-wrap
            {
                display:none!important
            }
            body
            {
                overflow:auto!important
            }`;
            document.head.append(jianshuStyle);
            break;
        }
        default:break;
    }
})();