移除知乎登录弹窗

移除知乎的登录弹窗

目前為 2021-03-31 提交的版本,檢視 最新版本

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// ==UserScript==
// @name         移除知乎登录弹窗
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  移除知乎的登录弹窗
// @author       leekbillow
// @match        https://www.zhihu.com/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    //添加限制样式
    let style=document.createElement('style'),
        styleId=`Tampermonkey${new Date()*1}`;
    style.id=styleId;
    style.innerHTML=`
    .Modal-wrapper,
    .Modal-backdrop,
    .signFlowModal
    {
        display:none!important;
    }`;
    document.head.append(style);
    //取消首次自动弹出登录框,解除监听
    let removeStyle=function()
        {
            document.querySelector('.AppHeader-login').onclick=()=>document.getElementById(styleId).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();
                setTimeout(removeStyle,200);
            }
            else return;
        });
    observer.observe(targetNode, observerOptions);
})();