尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

写个chrome插件屏蔽某些视频,防止孩子看些不正常的视频

写个chrome插件屏蔽某些视频,防止孩子看些不正常的视频
📅 发布时间:2026/6/20 1:48:15

写个chrome插件屏蔽某些视频,防止孩子看些不正常的视频

Posted on 2025-12-01 11:22  隐客  阅读(0)  评论(0)    收藏  举报
manifest.json
{"manifest_version": 3,"name": "抖音关键词屏蔽","version": "1.0","description": "屏蔽抖音视频标题中包含'xxxxxx'关键词的视频","permissions": ["activeTab"],"content_scripts": [{"matches": ["*://*.douyin.com/*"],"js": ["content.js"],"run_at": "document_end"}],"action": {"default_popup": "popup.html"}
}

 content.js

// ======== 用户配置 ========
const blockWords = ['惊悚', 'steam游戏', '画离弦', '猫meme', 'roblox'];
const jumpURL = 'about:blank';
// ==========================

const pattern = new RegExp(blockWords.map(w => w.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')).join('|'),'i'
);/* 1. 取“正在播放”的卡片节点 */
function getActiveCard() {// 正在播放的 <video> 必定带 autoplay 属性const activeVideo = document.querySelector('video[autoplay]');if (!activeVideo) return null;// 向上找最近的卡片容器return activeVideo.closest('[data-e2e="feed-item"], .dySwiperSlide');
}/* 2. 在卡片内拿标题 + account,合并文本 */
function getCurrentText() {const card = getActiveCard();if (!card) return '';const desc = card.querySelector('div.title[data-e2e="video-desc"]');const acc  = card.querySelector('div.account');const t1 = desc ? desc.textContent.trim() : '';const t2 = acc  ? acc.textContent.trim()   : '';//console.log('[DBG] 当前卡片标题:', t1, '| account:', t2);return `${t1} ${t2}`.trim();
}/* 3. 检查 + 跳转 */
function check() {const txt = getCurrentText();if (txt && pattern.test(txt)) {//console.log('[Block] 命中关键词,立即跳转 → ', txt);
    location.replace(jumpURL);}
}/* 4. 监听:DOM 变化 / 路由变化 */
const observer = new MutationObserver(check);
observer.observe(document.body, {childList: true,subtree: true,attributes: true,attributeFilter: ['autoplay']   // <video autoplay> 出现就触发
});/* 5. 路由变化也补一次 */
let lastHref = location.href;
setInterval(() => {if (location.href !== lastHref) {lastHref = location.href;setTimeout(check, 2000); // 等新卡片渲染完
  }
}, 2000);/* 6. 首次运行 */
check();

popup.html

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><!-- 关键:指定 UTF-8 --><style>body { width: 200px; padding: 12px; font: 14px/1.4 sans-serif; }.ok { color: #4CAF50; font-weight: bold; }</style>
</head>
<body><h3>抖音关键词屏蔽</h3><p>状态: <span class="ok">运行中</span></p><p>屏蔽关键词: xxx </p>
</body>
</html>

 

相关新闻

  • ODB和其他C++ ORM框架相比有什么优势?
  • 论文阅读:《AI大模型时代:向量数据库如何挑战存储极限?》
  • 【EF Core】两种方法记录生成的 SQL 语句

最新新闻

  • 2026芜湖漏水检测维修精选优质服务商TOP5推荐!卫生间漏水/厨房漏水/屋顶天花板漏水/阳台漏水/地下室漏水防水补漏检测维修-正规防水补漏公司优选口碑榜测评推荐 - 即刻修防水
  • Mission Planner:5个高效实用技巧让你快速掌握专业无人机飞行控制
  • 预装windows11系统的西门子IPC型号:PX-39A PRO
  • 2026年污泥处理设备靠谱厂商推荐:德州洁盛环保科技,以稳定设备助力养殖及工业污水污泥无害化处置 - 海棠依旧大
  • S12S BDM硬件握手协议:ACK脉冲原理与嵌入式调试实战
  • 前向车辆最小转弯约束下的两点间最短路径生成工具(MATLAB实现+图形可视化)

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号