我一直试图找出答案,大约一个小时了,现在找不到任何东西。我正在创建一个Chrome扩展程序,将“希拉里克林顿”替换为“唐纳德特朗普”,它适用于除Facebook以外的所有网站。它适用于搜索时显示的人名,但不适用于任何帖子。我的代码:
walk(document.body);
function walk(node)
{
var child, next;
switch ( node.nodeType )
{
case 1: // Element
case 9: // Document
case 11: // Document fragment
child = node.firstChild;
while ( child )
{
next = child.nextSibling;
walk(child);
child = next;
}
break;
case 3: // Text node
handleText(node);
break;
}
}
function handleText(textNode)
{
var v = textNode.nodeValue;
var z = textNode.nodeValue.nodeValue;
v = v.replace(/\bHillary Clinton\b/gi, "Donald Trump");
textNode.nodeValue = v;
}
我的清单:
{
"manifest_version": 2,
"name": "Hillary Trump",
"description": "CHANGE THIS!!!",
"version": "1.0",
"content_scripts": [
{
"matches": [
"*://*/*",
"https://*.facebook.com/*"
],
"js": [
"jquery.js",
"content2.js"
],
"run_at": "document_end"
}
],
"icons": { "16": "icon16.png",
"48": "icon48.png",
"128": "icon128.png" },
"browser_action": {
"default_popup": "popup.html"
}
}
答案 0 :(得分:0)
像这样使用Mutation Observer
{{1}}
答案 1 :(得分:0)
我已经创建了一个简单的更新工作 您需要做的就是将整个事物包含在下面的setInterval中:
window.setInterval(function(){
// ADD CODE HERE!!
}