1.背景
我正在创建browser extension to enhance YouTube's keyboard navigation。我想到的快捷方式之一是评论1。
1:我目前正在使用Dart,但它模仿JS,后来无论如何都要转译为它。
2.我尝试过的
YouTube使用了许多自定义HTML元素,因此,我不清楚什么有效以及何时起作用,最终我不得不对每次遇到自定义标签的情况进行反向工程。
我基本上已经尝试过像这样的事情:
document.querySelector('#labelAndInputContainer > div').click();
我应该改用focus()
吗?一旦被关注,
div#labelAndInputContainer
元素将获得一个名为focused
的新类。3.其他可选挑战
首先,YouTube不会在视频下方加载评论部分。仅当您向下滚动时,注释部分才会出现2。那么,如何确定哪个事件触发了评论部分的加载?我该如何人为地发送它? —否则,注释框的HTML元素将不存在。
我一直在使用
getEventListeners()
找出哪些事件在哪些元素上起作用。2:另一个示例是YouTube页面重新加载/导航到另一个页面时,该页面由
yt-navigate-start
触发。您可能已经注意到,我不是JS专家,所以请随时了解基础知识或给我新手技巧。
最佳答案
目前,您可以使用其ID专注于评论输入:
document.getElementById("simplebox-placeholder").focus();
但是,只有向下翻页并等待其加载后,才会加载该文件。因此,向下翻页并等待一段时间。另外,根据窗口的宽度,您可能需要多次向下翻页。