乐趣区

关于java:Java学习记录路线更新ing

视频

  1. JavaSE:【尚硅谷】Java 零根底入门教程
  2. MySQL:
  3. JDBC:【尚硅谷】JDBC 核心技术
  4. HTML+CSS+JavaScript:【黑马程序员】JavaWeb 全套教程
  5. JavaWeb:
  6. (待更新……)

(注:MySQL、HTML+CSS 我没有看视频;JavaScript 看了黑马的 JavaWeb 局部内容。)

实用插件

  1. Chrome 插件:Tampermonkey 油猴脚本
  2. 油猴脚本:b 站多倍速调节(反对剧集和视频)

    // ==UserScript==
    // @name         b 站多倍速调节(反对剧集和视频)// @namespace    lgldlk
    // @version      0.5
    // @description  b 站多倍速调节(反对剧集和视频)🤞🤞🤞~~~
    // @author       lgldlk
    // @include      *://*.bilibili.com/video/*
    // @include      *://*.bilibili.tv/video/*
    // @include      *://*.bilibili.com/bangumi/*
    // @include      *://*.bilibili.tv/bangumi/*
    // @run-at       document-start
    // @grant        none
    // ==/UserScript==
    let cacheRate = 1,
     cacheFlag = true,
     rateArr = [5, 4.5, 4, 3.5, 3, 2.5, 2, 1.5, 1, 0.5, 0.1]
    
    function waitForNode(nodeSelector, callback) {var node = nodeSelector();
     if (node) {callback(node);
     } else {setTimeout(function() {waitForNode(nodeSelector, callback); }, 100);
     }
    }
    
    
    function debounce(func, wait) {
     let timer;
     return function() {
         let args = arguments;
         if (timer) clearTimeout(timer);
         timer = setTimeout(() => {func.apply(this, args)
         }, wait)
     }
    }
    
    function deleteChild(e) {
     var child = e.lastElementChild;
     while (child) {e.removeChild(child);
         child = e.lastElementChild;
     }
    }
    
    function setRate(video, rate) {video.playbackRate=rate;}
    
    function setRateText(rate) {(document.querySelector(".bilibili-player-video-btn-speed-name")||document.querySelector("div.squirtle-select-result.squirtle-speed-select-result")).innerText = `${rate}x`;
    }
    
    
    const initRateBody = function(callBack) {waitForNode(() => document.querySelector('div.bilibili-player-video-btn-speed > div > ul')||document.querySelector("ul.squirtle-select-list.squirtle-speed-select-list.squirtle-dialog"),
         (node) => {var oV = document.getElementsByTagName("video")[0];
             if (oV == undefined) {alert("清空缓存后刷新即可应用")
                 return;
             }
             deleteChild(node)
             for (let i of rateArr) {var tmpLi = document.createElement('li');
                 tmpLi.classList = "bilibili-player-video-btn-speed-menu-list squirtle-select-item";
                 tmpLi.innerText = `${i}x`;
                 tmpLi.style.height = "30px"
                 tmpLi.style["font-size"] = "16px"
                 tmpLi.style["line-height"] = "30px"
                 tmpLi.addEventListener("click", function(k) {return function(e) {e.stopPropagation();
                        e.preventDefault();
                         cacheRate = k
                         setRate(oV, k)
                         setRateText(k)
                     }
                 }(i));
                 node.appendChild(tmpLi);
             }
             oV.addEventListener('DOMNodeRemoved', () => {if (cacheFlag == true) {let tmp = debounce(function() {initRateBody(setRate(oV, cacheRate));
                         setRateText(cacheRate)
                         cacheFlag = true;
                     }, 1000)
                     tmp();}
                 cacheFlag = false
             });
             callBack && callBack();});
    };
    window.onload = initRateBody(null);
    window.onhashchange = function() {initRateBody(setCacheRate);
    }
  3. 油猴脚本:跳过 bilibili 充电鸣谢

    // ==UserScript==
    // @name         跳过 bilibili 充电鸣谢
    // @namespace    怒火无际
    // @version      2.0
    // @description  跳过 bilibili 充电鸣谢,主动间断播放
    // @author       怒火无际
    // @match        https://www.bilibili.com/video/*
    // @grant        GM_log
    // @grant        GM_addStyle
    // @grant        GM_setValue
    // @grant        GM_getValue
    // @grant        GM_xmlhttpRequest
    // @grant        GM_deleteValue
    // @license      MIT License
    // ==/UserScript==
    
    (function() {if(document.getElementsByTagName('video').length==0){document.getElementsByTagName('bwp-video')[0].onended=function(){document.getElementsByClassName('bilibili-player-video-btn-next')[0].click()}
     }else{document.getElementsByTagName('video')[0].onended=function(){document.getElementsByClassName('bilibili-player-video-btn-next')[0].click()}
     }
    })();
退出移动版