Eink-Zhihu

Keep only main content in zhihu

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램을 설치해야 합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name         Eink-Zhihu
// @namespace    https://greasyfork.org/users/169007
// @version      1.4.6
// @description  Keep only main content in zhihu
// @author       ZZYSonny
// @match        https://www.zhihu.com/*
// @grant        none
// @run-at       document-start
// ==/UserScript==
(function () {
    'use strict';
    const head = document.getElementsByTagName('head')[0];
    const exGlobalStyle = document.createElement('style');
    const M = [
        [
            [
                ".VideoAnswerPlayer",
                ".CornerButtons",
                ".AppHeader",
                ".QuestionHeader",
                ".Question-sideColumn",
                ".GlobalSideBar",
                ".Reward",
                ".Catalog",
                ".Sticky",
                ".MCNLinkCard",
                ".Topstory > div:not(.Topstory-container)"
            ], c => `${c}{display: none;}`
        ], [
            [
                ".Question-main",
                ".Question-mainColumn",
                ".Topstory-container",
                ".Topstory-mainColumn"
            ],c => `${c}{width:100%;padding:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;}`
        ], [
            ["figure"],
            c => `${c}{width: 50%;padding-left:25%;pointer-events:none;}`
        ]
    ];
    exGlobalStyle.type = 'text/css';
    exGlobalStyle.innerHTML = M.flatMap(p => p[0].map(p[1])).join("\n");
    head.appendChild(exGlobalStyle);
})();