// ==UserScript== // @name 自用小工具 // @namespace http://tampermonkey.net/ // @match https://applnn.cc/ // @match https://applnn.cc/* // @match https://www.applnn.cc/ // @match https://www.applnn.cc/* // @match https://*.lanzout.com/ // @match https://*.lanzout.com/* // @match https://www.aliyundrive.com/* // @grant unsafeWindow // @grant GM_addStyle // @grant GM_notification // @run-at document-start // @version 1.96 // @license MIT // @author Berger // @description 去广告 // @downloadURL https://update.greasyfork.icu/scripts/499224/%E8%87%AA%E7%94%A8%E5%B0%8F%E5%B7%A5%E5%85%B7.user.js // @updateURL https://update.greasyfork.icu/scripts/499224/%E8%87%AA%E7%94%A8%E5%B0%8F%E5%B7%A5%E5%85%B7.meta.js // ==/UserScript== (function () { 'use strict'; const url = window.location.href; const utils = { removeElementArrays(elementList) { if (elementList.length > 0) { elementList.forEach(element => { element.remove() }) } }, removeElement(element) { if (element) { element.remove() } }, responseInterceptors(fetchUrl, handleFunction) { const originOpen = XMLHttpRequest.prototype.open; XMLHttpRequest.prototype.open = function (method, url) { if (url.indexOf(fetchUrl) !== -1) { this.addEventListener('readystatechange', function () { if (this.readyState === 4) { const response = JSON.parse(this.responseText) const modifiedResponse = handleFunction(response) Object.defineProperty(this, "responseText", { writable: true, }); this.responseText = JSON.stringify(modifiedResponse) } }) } originOpen.apply(this, arguments); } }, checkElement(className, callback) { const observer = new MutationObserver(function (mutationsList, observer) { const element = document.querySelector(className); if (element) { observer.disconnect(); callback(element) } }); observer.observe(document.body, {childList: true, subtree: true}); }, checkElementDIY(className, parentElement, callback) { const observer = new MutationObserver(function (mutationsList, observer) { const element = parentElement.querySelector(className); if (element) { observer.disconnect(); callback(element) } }); observer.observe(document.body, {childList: true, subtree: true}); }, notifyTool(title, message) { GM_notification({ text: message, timeout: 3000, title: title, }); } } function app_lnn_AD_normal() { const noticeBoard = document.querySelector('div[id="gong-box"]'); utils.removeElement(noticeBoard) const homeTopAd_1 = document.querySelector('div[id="home-row-gg"]'); utils.removeElement(homeTopAd_1) const homeTopAd_2 = document.querySelector('div[id="home-row-gg2"]'); utils.removeElement(homeTopAd_2) const essayTopAd = document.querySelector('div[class="single-top-html"]'); utils.removeElement(essayTopAd) utils.checkElement('.inner-wrapper-sticky>.sidebar-innter', function (essaySideBar) { utils.removeElement(essaySideBar.children[0]) utils.removeElement(essaySideBar.children[2]) // console.log(essaySideBar.children) }) const essayBottomAd = document.querySelector('.single-bottom-html'); utils.removeElement(essayBottomAd) const downloadAd = document.querySelectorAll('div[class="n_banner_inner"]'); utils.removeElementArrays(downloadAd) const downloadBanner = document.querySelector('.download-page-info') utils.removeElement(downloadBanner.nextElementSibling) } function lan_z_out_AD_normal() { const downloadAD = document.querySelectorAll('div[class="appad"]'); utils.removeElementArrays(downloadAD) const downloadBottomAd = document.querySelectorAll('div:not([class]):not([id])'); utils.removeElementArrays(downloadBottomAd) console.log(downloadBottomAd) } function get_aliDrive_refresh_token() { utils.checkElement('.nav-tab-content--9YjBf', function (leftNavDiv) { const tokenBtn = document.createElement('div') tokenBtn.className = 'nav-tab-item--WhAQf' tokenBtn.innerHTML = ` 复制Token ` leftNavDiv.appendChild(tokenBtn) tokenBtn.addEventListener('click', function () { const refreshToken = JSON.parse(localStorage.getItem('token'))['refresh_token'] if (refreshToken) { navigator.clipboard.writeText(refreshToken).then(() => { const statusSpan = tokenBtn.querySelector('.tipsText'); statusSpan.textContent = '复制成功√'; setTimeout(() => { statusSpan.textContent = '复制Token'; }, 2000); }) } else { alert('获取失败!') } }) }) } let main = { initNormal() { if (url.indexOf('applnn.cc') !== -1) { app_lnn_AD_normal() } else if (url.indexOf('lanzout.com') !== -1) { lan_z_out_AD_normal() } else if (url.indexOf('aliyundrive.com') !== -1) { get_aliDrive_refresh_token() } }, } window.addEventListener('DOMContentLoaded', main.initNormal); })();