YouTube Streamer Chat Highlight

Collects streamer messages from live chat into a persistent panel that doesn't truncate

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

You will need to install an extension such as Tampermonkey to install this script.

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

作者
dudebot
日安装量
0
总安装量
3
评分
0 0 0
版本
1.3.0
创建于
2025-12-01
更新于
2025-12-01
大小
12.9 KB
许可证
MIT
适用于

YouTube Streamer Chat Highlight

Captures streamer messages from YouTube live chat into a persistent, resizable panel. Never miss what the streamer said because chat scrolled it away.

Streamer Chat Highlight panel showing captured messages

The panel sits above the chat and collects every message from the channel owner. Click the header to collapse it, or drag the bottom edge to resize. Your preferred height is remembered across sessions. Works in both the main watch page and popout chat.

Emojis, custom channel emotes, profile pictures, and timestamps are all preserved. Messages stay in the panel for as long as the page is open, even after they've scrolled out of the regular chat.

Installation

  1. Install Tampermonkey or another userscript manager
  2. Install from GreasyFork or GitHub
  3. Open any YouTube live stream - the panel appears above the chat

How It Works

YouTube's live chat runs inside an iframe, which creates a security boundary. The script runs in three contexts to handle this:

Chat iframe: A MutationObserver watches for new messages. When one has author-type="owner", it extracts the content and sends it to the parent page via postMessage.

Main watch page: Listens for those messages and renders them in the panel UI.

Popout chat: When chat is popped out into its own window, there's no iframe boundary, so the script observes and renders directly.

The selectors used (#author-name, #message, yt-live-chat-item-list-renderer, etc.) are YouTube's internal DOM structure. If YouTube redesigns their chat, these would need updating, but the core logic stays the same.

License

MIT