Javascript 加载Youtube评论或Messenger消息时,如何运行Chrome扩展?
我想将包含某个关键字的youtube评论更改为其他内容,但要做到这一点,我必须检测它们的文本。我使用的chrome扩展的清单如下:Javascript 加载Youtube评论或Messenger消息时,如何运行Chrome扩展?,javascript,jquery,google-chrome,google-chrome-extension,youtube,Javascript,Jquery,Google Chrome,Google Chrome Extension,Youtube,我想将包含某个关键字的youtube评论更改为其他内容,但要做到这一点,我必须检测它们的文本。我使用的chrome扩展的清单如下: { "manifest_version": 2, "browser_action": { "default_icon": "icon.png", "default_popup": "popup.html" }, "permissions": [ "activeTab", "https://ajax.googleapis
{
"manifest_version": 2,
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html"
},
"permissions": [
"activeTab",
"https://ajax.googleapis.com/"
],
"content_scripts": [{
"css": ["styles.css"],
"js": ["content.js"],
"matches": ["https://*/*"],
"run_at": "document_end"
}]
}
我的content.js文件如下:
警报(“启动”)代码>
然而,在Youtube评论或Messenger消息加载之前,我的警报就会发出。如何等待?YouTube评论和messenger消息是异步加载的,您的content.js
在document\u端运行,即在执行这些调用之前
在“document_end”的情况下,文件在DOM完成后立即注入,但在加载子资源(如图像和帧)之前注入
从
在YouTube中,您必须使用某种监听器,可能是MutationObserver
,此代码应该可以工作:
// select the target node
var target = document.getElementById('watch-discussion');
// create an observer instance
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
console.log(mutation.type);
});
});
// configuration of the observer:
var config = { childList: true };
// pass in the target node, as well as the observer options
observer.observe(target, config);
基于
通过监听comments包装器的childList突变,您将能够在每次异步将评论加载到页面时触发代码,异步加载YouTube评论和messenger消息,并且您的content.js
在文档端运行,即在执行这些调用之前
在“document_end”的情况下,文件在DOM完成后立即注入,但在加载子资源(如图像和帧)之前注入
从
在YouTube中,您必须使用某种监听器,可能是MutationObserver
,此代码应该可以工作:
// select the target node
var target = document.getElementById('watch-discussion');
// create an observer instance
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
console.log(mutation.type);
});
});
// configuration of the observer:
var config = { childList: true };
// pass in the target node, as well as the observer options
observer.observe(target, config);
基于
通过监听comments包装器的childList突变,您将能够在每次将注释异步加载到页面时触发代码另请参见,另请参见和