【发布时间】:2022-01-03 01:00:37
【问题描述】:
如果相关文本的时间跨度短于 70 秒,则会有一个浮动的 uBlock 过滤器隐藏所有视频缩略图:
www.youtube.com##ytd-browse ytd-grid-video-renderer:has(span.ytd-thumbnail-overlay-time-status-renderer:has-text(/\s(0:\d\d|1:0\d)\s/))
但我不想在加载时阻止所有内容。我只是希望能够在加载用户的视频概览页面后隐藏元素。我在 stackoverflow 上搜索并找到了这个通过 getElementsByTagName 隐藏图像的小书签:
javascript bookmarklet to hide all images from current webpage?
javascript:(function(){var imgs=document.getElementsByTagName("img");for(var i=0;i<imgs.length;i++)imgs[i].style.visibility="hidden"}());
在调整这个小书签以将其与上面使用 getElementsByClassName 编写的 CSS 选择器匹配时,我失去了一些头发。它只是没有用。文本元素 (span.ytd-thumbnail-overlay-time-status-renderer:has-text) 应小于 70 秒,父元素 ytd-grid-video-renderer然后应该删除 em>。 为什么我不能让它工作?
【问题讨论】:
标签: javascript css youtube bookmarklet