等待 Youtube 评论加载,然后运行函数



所以你知道那些在页面加载后必须等待一定时间才能显示下载按钮的网站。 在这种情况下,例如YouTube,页面完成加载,但您必须等待一定时间才能显示评论。 所以问题是我希望我的扩展在页面的某个div 完成加载时运行或至少运行一个函数,以防评论div。我已经尝试在我的清单文件中"run_at": "document_end",正如一些堆栈溢出所说的那样,但在评论加载后它仍然没有这样做。我认为它会在页面加载完成后进行,但 Youtube 评论仍然加载。有些我在我的内容中使用了类似setTimeout10000 毫秒的东西.js 文件,它工作正常,但问题是有些评论可能会加载得更快,有些加载速度更慢,我不希望等待很长时间等待扩展加载。 有人得到帮助吗?对不起,说来话长。

runAfter = _=> alert('Hi');
// I want that function to run after the comment section div has finished loading.
// I could use setTimeout for 10 seconds but it seems long to wait eg.
setTimeout(_=> { alert('Hi') }, 10000);

您可以尝试轮询可见性。

function waitForEl(el) {
return new Promise((resolve, reject) => {
const intervalId = setInterval(() => {
if (document.querySelector(el)) {
clearInterval(intervalId);
resolve();
}
}, 500);
});
}
waitForEl("#comments").then(() => {
// comments should be loaded here
});

相关内容

最新更新