您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Brings back the original version of the LUL emote
// ==UserScript== // @name Twitch Restore Original LUL // @namespace b4k // @description Brings back the original version of the LUL emote // @author Bakugo // @version 1.0.0 // @match *://www.twitch.tv/* // @run-at document-start // ==/UserScript== (function () { var doMain; var doProcessNode; var doLoopUpdateChat; var observer; var obsTarget; doMain = function () { observer = new MutationObserver( function (mutations) { mutations.forEach( function (mutation) { if (mutation.type === "childList") { mutation.addedNodes.forEach( function (node) { doProcessNode(node); } ); } } ); } ); obsTarget = null; window.setInterval( function () { doLoopUpdateChat(); }, (1000*3) ); }; doProcessNode = function (node) { if (node.matches(".chat-line__message") === false) { return; } node.querySelectorAll(".chat-line__message--emote[alt=\"LUL\"]") .forEach( function (emote) { if (emote.src.indexOf("/425618/") !== -1) { emote.src = "//cdn.betterttv.net/emote/567b00c61ddbe1786688a633/1x"; emote.srcset = "//cdn.betterttv.net/emote/567b00c61ddbe1786688a633/2x 2x"; } } ); }; doLoopUpdateChat = function () { var tmp; tmp = document.querySelector( ".chat-list__lines [role=\"log\"]"); if (obsTarget === tmp) { return; } obsTarget = tmp; observer.disconnect(); if (obsTarget !== null) { obsTarget.querySelectorAll(".chat-line__message") .forEach( function (node) { doProcessNode(node); } ); observer.observe( obsTarget, { childList: true } ); } }; doMain(); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址