xiaoxiannv's recent timeline updates
xiaoxiannv

xiaoxiannv

V2EX member #248201, joined on 2017-08-11 22:36:55 +08:00
Today's activity rank 7763
xiaoxiannv's recent replies
@xiaoke mdns 转发啊
@xiaoke 对,理论上 vlan 在哪头都行,只要是 vlan ,只有 vlan 才能挡住 ra ( ap 硬转发开启的情况下)
// ==UserScript==
// @name YouTube "Interruptions" Popup Remover
// @license MIT
// @version 1.5
// @namespace https://github.com/tukarsdev
// @description Automatically removes the "Experiencing interruptions?" popup on YouTube.
// @author tukars
// @icon https://www.youtube.com/favicon.ico
// @match https://www.youtube.com/*
// @require https://update.greasyfork.org/scripts/552301/1676024/Observe.js
// @run-at document-end
// @grant none
// @downloadURL https://update.greasyfork.org/scripts/552318/YouTube%20%22Interruptions%22%20Popup%20Remover.user.js
// @updateURL https://update.greasyfork.org/scripts/552318/YouTube%20%22Interruptions%22%20Popup%20Remover.meta.js
// ==/UserScript==

const { contextPrint, waitForElement, observeAndHandle } = window.userscript.com.tukars.Observe;

const ENABLE_DEBUG_LOGGING = true;

const { log, warn, error, info, debug } = contextPrint(
"YT Interruptions Remover", ENABLE_DEBUG_LOGGING
);

function destroyNotification(notification) {
if (!notification) {
error("Notification element does not exist! Cannot delete it!");
return;
}
if (!notification.parentNode) {
warn("Notification element already removed from the DOM.");
return;
}
debug("Destroying 'Interruptions' notification element.", notification);
notification.remove();
log("Successfully removed 'Interruptions' notification.");
}

async function handleInterruptionNotification(notification) {
debug("Detected a potential notification element:", notification);

const textElement = await waitForElement("#text", 2000, notification);

if (!textElement) {
debug("This notification does not have the expected text element. Ignoring.");
return;
}

debug(`Got text element. Text is: "${textElement.textContent}"`)

const textContent = textElement.textContent.trim();

if (textContent.includes("Experiencing interruptions?")) {
log("Found 'Experiencing interruptions?' notification. Removing it.");
destroyNotification(notification);
} else {
debug(`Notification text did not match. Text was: "${textContent}"`);
setTimeout(() => { debug(`Text after 300ms: "${textElement.textContent}"`) }, 300);
}
}

(async function () {
"use strict";
log("Interruptions remover is active.");

const popupContainer = await waitForElement("ytd-popup-container.style-scope.ytd-app");

observeAndHandle(popupContainer, "tp-yt-paper-toast", handleInterruptionNotification);
})();
安装这款脚本可以解决
https://greasyfork.org/zh-CN/scr ... tions-popup-remover
YouTube“中断”弹出窗口移除器
@starryloki 嗯,一样,实现原理都差别不大
3 days ago
Replied to a topic by test0103 宽带症候群 自建网络节点的方案选择
标称 200M ,实际能跑到多少取决于邻居。

因为轻量本质就是高超售产品。
@Paradoxos 这个比方打的绝了
@starryloki
IoT → 主网:阻止;
IoT → 光猫:阻止;
IoT → Internet:允许;
主网 → IoT:允许;
IoT → RouterOS:只允许 DHCP 、DNS 、mDNS 、ICMP ;
IoT 无法访问 WinBox 、WebFig 、SSH 、SMB 。
@z5238384 不光 homepod ,智能家居,监控等一系列,还是不够相信国产商业闭源的底线和逻辑,他们就 iot 老老实实呆着吧
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2698 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 27ms · UTC 14:10 · PVG 22:10 · LAX 07:10 · JFK 10:10
♥ Do have faith in what you're doing.