xxxily / h5player

This software supports all audio and video websites, such as TikTok, YouTube, Bilibili, TED, Instagram, Twitter, etc. Features include: variable playback speed, screen capture, video download, custom settings, and extensions, etc., providing you with a pleasant online audio and video playback experience.
https://h5player.anzz.top
GNU General Public License v3.0
3.05k stars 253 forks source link

[BUG] 全局快捷键与ShadowRoot中的输入元素冲突 #542

Closed shc0743 closed 1 year ago

shc0743 commented 1 year ago
  1. 问题描述

    全局快捷键与ShadowRoot中的输入元素冲突,导致无法在 shadow-root 的输入框(只要是在ShadowRoot里面都不行,例如 input , textarea , [contenteditable="true"] )中输入文字

详细问题: /src/h5player/crossTabCtl.js 97行 与 /src/h5player/h5player.js 2054行中调用 isEditableTarget 时都没有考虑到 shadow-root 的问题,而是直接使用event.target 调用,当元素处于 shadow-root 中时 event.target 无法正确判断目标元素,导致出现此问题

参考资料:

修复建议:

  1. 出现上述问题的地址

    demo: demo.zip

  2. 你使用的浏览器与浏览器版本信息

    Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36

  3. 其他附注信息

    相关PR: #543