ss
This commit is contained in:
@@ -4,9 +4,10 @@
|
||||
{
|
||||
"name": "YouTube Studio Auto Dismiss",
|
||||
"file_url": "https://greasyfork.org/scripts/557378-youtube-studio-auto-dismiss/code/YouTube%20Studio%20Auto%20Dismiss.user.js",
|
||||
"source": "// ==UserScript==\n// @name YouTube Studio Auto Dismiss\n// @namespace http://tampermonkey.net/\n// @version 1.1\n// @description 每5秒自动检测并点击 YouTube Studio 直播页面的 Dismiss 按钮,支持延迟加载\n// @author You\n// @match https://studio.youtube.com/channel/*/livestreaming\n// @match https://studio.youtube.com/video/*/livestreaming\n// @match https://studio.youtube.com/*/livestreaming\n// @license MIT\n// @grant none\n// @downloadURL https://update.greasyfork.org/scripts/557378/YouTube%20Studio%20Auto%20Dismiss.user.js\n// @updateURL https://update.greasyfork.org/scripts/557378/YouTube%20Studio%20Auto%20Dismiss.meta.js\n// ==/UserScript==\n\n(function () {\n \"use strict\";\n\n function triggerClick(el) {\n if (!el) return;\n const evt = new MouseEvent(\"click\", {\n view: window,\n bubbles: true,\n cancelable: true,\n });\n el.dispatchEvent(evt);\n console.log(\"Dismiss 按钮已点击:\", el, \"父元素:\", el.parentElement);\n }\n\n function findDismiss(root = document) {\n const allElements = root.querySelectorAll(\"button\");\n for (const el of allElements) {\n try {\n const text = el.innerText ? el.innerText.trim() : \"\";\n if (text === \"Dismiss\" && isElementVisible(el)) {\n console.log(\"找到 Dismiss 按钮:\", el);\n return el;\n }\n\n if (el.shadowRoot) {\n const shadowBtn = findDismiss(el.shadowRoot);\n if (shadowBtn) return shadowBtn;\n }\n } catch (error) {\n console.log(\"检查元素时出错:\", error);\n }\n }\n return null;\n }\n\n function isElementVisible(el) {\n const style = window.getComputedStyle(el);\n return style.display !== \"none\" && style.visibility !== \"hidden\" && el.offsetParent !== null;\n }\n\n function checkAndClick() {\n const btn = findDismiss();\n if (btn) {\n triggerClick(btn);\n } else {\n console.log(\"未找到 Dismiss 按钮或按钮不可见\");\n }\n }\n\n if (document.readyState === \"complete\") {\n checkAndClick();\n } else {\n window.addEventListener(\"load\", checkAndClick, { once: true });\n }\n\n setInterval(checkAndClick, 5000);\n})();\n",
|
||||
"source": "Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBZb3VUdWJlIFN0dWRpbyBBdXRvIERpc21pc3MKLy8gQG5hbWVzcGFjZSAgICBodHRwOi8vdGFtcGVybW9ua2V5Lm5ldC8KLy8gQHZlcnNpb24gICAgICAxLjEKLy8gQGRlc2NyaXB0aW9uICDmr48156eS6Ieq5Yqo5qOA5rWL5bm254K55Ye7IFlvdVR1YmUgU3R1ZGlvIOebtOaSremhtemdoueahCBEaXNtaXNzIOaMiemSru+8jOaUr+aMgeW7tui/n+WKoOi9vQovLyBAYXV0aG9yICAgICAgIFlvdQovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vc3R1ZGlvLnlvdXR1YmUuY29tL2NoYW5uZWwvKi9saXZlc3RyZWFtaW5nCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9zdHVkaW8ueW91dHViZS5jb20vdmlkZW8vKi9saXZlc3RyZWFtaW5nCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9zdHVkaW8ueW91dHViZS5jb20vKi9saXZlc3RyZWFtaW5nCi8vIEBsaWNlbnNlIE1JVAovLyBAZ3JhbnQgICAgICAgIG5vbmUKLy8gQGRvd25sb2FkVVJMICBodHRwczovL3VwZGF0ZS5ncmVhc3lmb3JrLm9yZy9zY3JpcHRzLzU1NzM3OC9Zb3VUdWJlJTIwU3R1ZGlvJTIwQXV0byUyMERpc21pc3MudXNlci5qcwovLyBAdXBkYXRlVVJMICAgIGh0dHBzOi8vdXBkYXRlLmdyZWFzeWZvcmsub3JnL3NjcmlwdHMvNTU3Mzc4L1lvdVR1YmUlMjBTdHVkaW8lMjBBdXRvJTIwRGlzbWlzcy5tZXRhLmpzCi8vID09L1VzZXJTY3JpcHQ9PQoKKGZ1bmN0aW9uICgpIHsKICAidXNlIHN0cmljdCI7CgogIGZ1bmN0aW9uIHRyaWdnZXJDbGljayhlbCkgewogICAgaWYgKCFlbCkgcmV0dXJuOwogICAgY29uc3QgZXZ0ID0gbmV3IE1vdXNlRXZlbnQoImNsaWNrIiwgewogICAgICB2aWV3OiB3aW5kb3csCiAgICAgIGJ1YmJsZXM6IHRydWUsCiAgICAgIGNhbmNlbGFibGU6IHRydWUsCiAgICB9KTsKICAgIGVsLmRpc3BhdGNoRXZlbnQoZXZ0KTsKICAgIGNvbnNvbGUubG9nKCJEaXNtaXNzIOaMiemSruW3sueCueWHuzoiLCBlbCwgIueItuWFg+e0oDoiLCBlbC5wYXJlbnRFbGVtZW50KTsKICB9CgogIGZ1bmN0aW9uIGZpbmREaXNtaXNzKHJvb3QgPSBkb2N1bWVudCkgewogICAgY29uc3QgYWxsRWxlbWVudHMgPSByb290LnF1ZXJ5U2VsZWN0b3JBbGwoImJ1dHRvbiIpOwogICAgZm9yIChjb25zdCBlbCBvZiBhbGxFbGVtZW50cykgewogICAgICB0cnkgewogICAgICAgIGNvbnN0IHRleHQgPSBlbC5pbm5lclRleHQgPyBlbC5pbm5lclRleHQudHJpbSgpIDogIiI7CiAgICAgICAgaWYgKHRleHQgPT09ICJEaXNtaXNzIiAmJiBpc0VsZW1lbnRWaXNpYmxlKGVsKSkgewogICAgICAgICAgY29uc29sZS5sb2coIuaJvuWIsCBEaXNtaXNzIOaMiemSrjoiLCBlbCk7CiAgICAgICAgICByZXR1cm4gZWw7CiAgICAgICAgfQoKICAgICAgICBpZiAoZWwuc2hhZG93Um9vdCkgewogICAgICAgICAgY29uc3Qgc2hhZG93QnRuID0gZmluZERpc21pc3MoZWwuc2hhZG93Um9vdCk7CiAgICAgICAgICBpZiAoc2hhZG93QnRuKSByZXR1cm4gc2hhZG93QnRuOwogICAgICAgIH0KICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBjb25zb2xlLmxvZygi5qOA5p+l5YWD57Sg5pe25Ye66ZSZOiIsIGVycm9yKTsKICAgICAgfQogICAgfQogICAgcmV0dXJuIG51bGw7CiAgfQoKICBmdW5jdGlvbiBpc0VsZW1lbnRWaXNpYmxlKGVsKSB7CiAgICBjb25zdCBzdHlsZSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsKTsKICAgIHJldHVybiBzdHlsZS5kaXNwbGF5ICE9PSAibm9uZSIgJiYgc3R5bGUudmlzaWJpbGl0eSAhPT0gImhpZGRlbiIgJiYgZWwub2Zmc2V0UGFyZW50ICE9PSBudWxsOwogIH0KCiAgZnVuY3Rpb24gY2hlY2tBbmRDbGljaygpIHsKICAgIGNvbnN0IGJ0biA9IGZpbmREaXNtaXNzKCk7CiAgICBpZiAoYnRuKSB7CiAgICAgIHRyaWdnZXJDbGljayhidG4pOwogICAgfSBlbHNlIHsKICAgICAgY29uc29sZS5sb2coIuacquaJvuWIsCBEaXNtaXNzIOaMiemSruaIluaMiemSruS4jeWPr+ingSIpOwogICAgfQogIH0KCiAgaWYgKGRvY3VtZW50LnJlYWR5U3RhdGUgPT09ICJjb21wbGV0ZSIpIHsKICAgIGNoZWNrQW5kQ2xpY2soKTsKICB9IGVsc2UgewogICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBjaGVja0FuZENsaWNrLCB7IG9uY2U6IHRydWUgfSk7CiAgfQoKICBzZXRJbnRlcnZhbChjaGVja0FuZENsaWNrLCA1MDAwKTsKfSkoKTsK",
|
||||
"enabled": true,
|
||||
"position": 1
|
||||
"position": 1,
|
||||
"options": {}
|
||||
}
|
||||
],
|
||||
"settings": {
|
||||
|
||||
Reference in New Issue
Block a user