Greasy Fork 支持简体中文。

有道云笔记多合一精简网页

去除页面周边的多余 信息,使您在有道云笔记中可以直接阅读到清爽的正文效果

// ==UserScript==
// @name         有道云笔记多合一精简网页
// @icon         https://note.youdao.com/favicon.ico
// @version      1.0.6
// @description  去除页面周边的多余 信息,使您在有道云笔记中可以直接阅读到清爽的正文效果
// @author       王嘉乐
// @include      *
// @require      http://code.jquery.com/jquery-latest.js
// @grant        GM_registerMenuCommand
// @grant        GM_getResourceText
// @resource     YNoteClipper https://note.youdao.com/yws/YNoteClipper.js?_=1596113955041
// @run-at       document-start
// @license MIT
// @namespace https://greasyfork.org/users/1213222
// ==/UserScript==
//左下角按键类名
var copy_class="sidebar-collapse-content-item";

//左侧栏宽度
//var app_sidebar="app_sidebar";
var l_id="#flexible-left";
var app_sidebar_wMax=40;

//右侧顶栏&浮动高度
var HD_id="hd-space-between";
var noteHD_flex="0 0 40px";
var hdSpace={
    id:"hd-space-between",
    style:"flex: 0 0 40px"
}
//保存按钮&高度
var noteSaveBtn_id="note-save-btn";
var noteSaveBtn_top=-35;
var noteSaveBtn={
    id:"note-save-btn",
    style:"top: -35px !important;",
    remark:""
}
//编辑区
var bulbEditor={
    id:"bulb-editor",
    style:"top: 38px !important;height: calc(100% - 40px)!important;",
    remark:""
}
//隐藏列表
var listLight={
    id:"flexible-list-left",
    style:"left: 260px !important;display: none;width: 260px;",
    remark:"left: 0px !important;display: block;width: 260px;"

}
var listRight={
    id:"flexible-list-right",
    style:"left: 0px !important;display: block;",
    remark:"left: 260px !important;display: block;"
}
//列表栏-顶栏:搜索栏
var listSearch={
    class:"list-search",
    style:"height: 20px !important;width: 260px !important;",
    remark:"设定width为了,隐藏列表时,flex样式不会乱"
}
//列表栏-内容区:列表
var listBD={
    class:"list .list-bd.topNameTag",
    style:"top: 50px !important;",
    remark:""
}
//推出全屏
var eeCopy={
    id:"ee_copy",
    style:`               font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    width: 45px;
    height: 30px;
    margin-left: 4px;
    text-align: center;
    /* margin: auto; */
    /* padding-bottom: 1px; */
    /* vertical-align: middle; */
    border: none;
    border: 2px solid black;
    border-radius: 9px;
    z-index: 3;
    position: absolute;
    display:none;
    bottom: 10px;`
}
var collapseFull={
    class:"collapse-full-screen",
    style: "display: none;",
    remark:"隐藏退出全屏按钮"
}
//构建css样式
var list=[noteSaveBtn,bulbEditor,listSearch,listBD,hdSpace,eeCopy,collapseFull];
console.log(list)
function concatStyle(l){
    let str="";
    for(let i=0;i<l.length;i++){
        if(l[i].id){
            str=str+"#"+l[i].id;
        }else if(l[i].class){
            str=str+"."+l[i].class;
        }
        if(l[i].style){
            str=str+"{"+l[i].style+"}      "
        }
    }
    return str;;
}
//自定义按钮组
var r_stable=1
var r_id="#flexible-right"
var qq_copy=`<div class=`+copy_class+` id="qq_copy">
        <i class="icon-column-one" svg-icon="" svgname="view_1"><svg style="display: inline-block; width: 100%; height: 100%" role="img" class="">
            <use xlink:href="#view_1"></use>
        </svg></i>
    </div>`
var ww_copy=`<div class=`+copy_class+` id="ww_copy">
        <i class="icon-column-two" svg-icon="" svgname="view_2"><svg style="display: inline-block; width: 100%; height: 100%" role="img" class="">
            <use xlink:href="#view_2"></use>
        </svg></i>
    </div>`
var ee_copy=`<div class="note-tip editor-inside" id="ee_copy">
            保存
        </div>`
var cc=document.getElementsByClassName("detail-bd")[0];
var qq=document.createElement("div");
qq.innerHTML=`<div class="note-tip editor-inside" id="ee_copy">
            推出
        </div>`
'<div class="note-tip editor-inside" id="ee_copy">\n            保存\n        </div>'
function closeAd() {
    //移除底部(两层的)按钮
    $(".sidebar-footer").css("display","none");
    //瘦化左侧栏
    $(l_id).css("cssText","max-width: "+app_sidebar_wMax+"px;");
    $(".btn-column-two")[0].click();
    $("#hd-space-between").css("cssText","flex= 0 0 40px;");

}
//向html添加css样式
if(1){
    GM_addStyle(
        `
          /*删除左侧栏滑杆*/
          ::-webkit-scrollbar {
              display: none;
          }
          app-sidebar#flexible-left:after {
              content: "";
              flex-grow: 1;
          }
          app-sidebar#flexible-left:before {
              flex-grow: 1;
              content: "";
          }
          `
        +concatStyle(list)
    );
    //创建退出全屏按键
    var button = document.createElement("button");
    button.id = "ee_copy";
    button.textContent = ">|<";
    document.body.appendChild(button);
}







class listen{

    constructor() {

        this.observer_state=0;
        this.observer2_state=0;

        //防止,侧边栏变宽:>55px:set=55px->id:flexible-right
        this.observer = new MutationObserver((mutationRecord, mutationObserver) =>{
            if(MutationRecord.attributeName="style"){
                if(document.defaultView.getComputedStyle(
                    document.getElementById("flexible-right"),null).left.replace(/[^0-9]/ig,"")>app_sidebar_wMax
                  ){
                    $(r_id).css("cssText","left:"+app_sidebar_wMax+"px");
                }
            }
        });

        //注册监听防止,左侧栏展开列表->#flexible-left:collapse
        this.observer2 = new MutationObserver((mutationRecord, mutationObserver) =>{
            if(MutationRecord.attributeName="class"){
                if(document.getElementById("flexible-left").getAttribute("style")!="left: "+app_sidebar_wMax+"px;"){
                    $(l_id).addClass("collapse");
                }
            }
        });



    }

    start_1(){
        this.observer.observe(document.getElementById("flexible-right"), { attributes: true });
        this.observer_state=1;
    }
    start_2(){
        this.observer2.observe(document.getElementById("flexible-left"), { attributes: true });
        this.observer2_state=1;
    }
    stop_1(){
        this.observer.disconnect();
        this.observer_state=0;
    }
    stop_2(){
        this.observer2.disconnect();
        this.observer2_state=0;
    }
}

(function() {
    'use strict';
    //去网页广告
    window.onload=function (){
        var sidebarFt = document.getElementsByClassName('sidebar-ft')[0];
        sidebarFt.parentNode.removeChild(sidebarFt);

        document.getElementsByClassName('sidebar-content')[0].style.bottom = 0;
    };
    //重构页面
    window.setTimeout(e => {
        let target = document.querySelector('.main-container')
        let top = document.querySelector('.top-banner')
        top.style.zIndex = 0
        target.style.top = 0
        target.style.translation = 'all 0.5s'
    }, 100)
    //注册油猴菜单
    GM_registerMenuCommand('一键收藏', function () {
        var ydNoteWebClipperElem = document.getElementById('ydNoteWebClipper');
        if(document.getElementById('ydNoteWebClipper')) {
            document.body.removeChild(ydNoteWebClipperElem);
        }
        try {
            var YNoteClipper = GM_getResourceText('YNoteClipper');
            if(YNoteClipper) {
                new Function(YNoteClipper)();
            } else {
                var a = document.createElement('div');
                a.style.cssText = 'position: absolute;top: 10px;right: 30px;padding: 5px;border-radius: 5px;box-shadow: rgb(92, 184, 229) 0px 0px 2px; -webkit-box-shadow: rgb(92, 184, 229) 0px 0px 2px;background-color: rgba(92, 184, 229, 0.498039) !important;z-index: 999999;';
                a.innerHTML = 'Load script error!';
                document.body.appendChild(a);
                a.onclick = function() {
                    a.style.display = 'none';
                };
                setTimeout(function() {
                    a.click();
                }, 8e3);
            }
        } catch(b) {
            alert('该扩展暂不支持当前的浏览器或不支持收藏该类型https类网站');
            console.error(b);
        }
    });
    //重构页面
    var listener=new listen();

    if(1){

        //还有"DOMSubtreeModified"
        document.addEventListener("DOMNodeInserted", function (event) {
            if(1){
                $(event.target).find(".view-container").show(function(){
                    closeAd();
                    listener.start_1()
                    listener.start_2()
                    //listener.start_3()
                    document.getElementsByClassName("sidebar-collapse-footer")[0].innerHTML=qq_copy+ww_copy;

                    document.getElementById("qq_copy").onclick=()=>{
                        document.getElementsByClassName("btn-column-one")[0].click();
                        //点击全屏时显示推出按钮
                        $("#ee_copy").css("cssText","display: block;")
                    };



                    button.onclick=()=>{
                        document.getElementsByClassName("collapse-full-screen")[0].click();
                        if(r_stable==0){
                            $("#"+listLight.id).css("cssText",listLight.style);
                            $("#"+listRight.id).css("cssText",listRight.style);
                        }else{
                            $("#"+listLight.id).css("cssText",listLight.remark);
                            $("#"+listRight.id).css("cssText",listRight.remark);
                        }
                        $("#ee_copy").css("cssText","display: none;")
                    };


                    function qq_off(){
                        //$('#flexible-list-left').css({"display":"none"});
                        //$('#flexible-list-left').css("cssText","left:0px");
                        $("#"+listLight.id).css("cssText",listLight.style);
                        $("#"+listRight.id).css("cssText",listRight.style);
                        r_stable=0;
                    }
                    function qq_on(){
                        //$('#flexible-list-left').css({"display":"block"});
                        //$('#flexible-list-left').css("cssText","left:250px");
                        $("#"+listLight.id).css("cssText",listLight.remark);
                        $("#"+listRight.id).css("cssText",listRight.remark);
                        r_stable=1;
                    }
                    document.getElementById("ww_copy").onclick=()=>{
                        r_stable?qq_off():qq_on();
                    };

                })
            }

            //console.log(event.target.class)

            //alert(document.getElementById("hd-space-between"))
            //关闭和开启笔记列表
            /*
            $(event.target).find(".sidebar-collapse-footer").show(function(){
                document.getElementsByClassName("sidebar-collapse-footer")[0].innerHTML=envar.l.qq_copy+envar.l.ww_copy;
                document.getElementById("qq_copy").onclick=()=>{document.getElementsByClassName("btn-column-one")[0].click();};
                function qq_off(){
                    $('.viewport .list-detail .list').css({"display":"none"});
                    $('.viewport .list-detail .detail-container').css("cssText","left:0px");
                    envar.r.r_stable=0;
                }
                function qq_on(){
                    $('.viewport .list-detail .list').css({"display":"block"});
                    $('.viewport .list-detail .detail-container').css("cssText","left:255px");
                    envar.r.r_stable=1;
                }
                document.getElementById("ww_copy").onclick=()=>{
                    envar.r.r_stable?qq_off():qq_on();
                };
            });
            */

            //顶栏:hd-space-between#实现二
            /*
            $(event.target).find(".hd-space-between").show(function(){
                //alert("!hd-space-between:已被添加");
                $("#"+HD_id).css("cssText","flex:"+noteHD_flex);
            });
            */

            //移除广告
            $(event.target).find(".ad-close").show(function(){
                alert("!test:已删除广告");
                $("div.ad-close").click();
            });
        });

    }
})();