【发布时间】:2015-12-16 21:04:36
【问题描述】:
我是 js 代码的新手(来自 php/html/css),我正在尝试为 Chrome 创建一个个人扩展,允许浏览器用其他单词替换一些单词!
所以我有我的 manifest.json :
{
"manifest_version": 2,
"name": "Name1",
"version": "14.3",
"description": "Desc1",
"browser_action": {
"default_icon": "myicon.png",
"popup": "popup.html"
},
"content_scripts": [
{
"matches": [
"http://*/*",
"https://*/*"
],
"js": [
"content.js"
],
"run_at": "document_end"
} ]
}
然后是我的 content.js
var elements = document.getElementsByTagName('*');
for (var i = 0; i < elements.length; i++) {
var element = elements[i];
for (var j = 0; j < element.childNodes.length; j++) {
var node = element.childNodes[j];
if (node.nodeType === 3) {
var text = node.nodeValue;
var replacedText = text.replace(/[wordtoreplace]/gi, '[neword1]');
var replacedText = text.replace(/[wordtoreplace2]/gi, '[neword1]');
var replacedText = text.replace(/[wordtoreplace3]/gi, '[neword1]');
if (replacedText !== text) {
element.replaceChild(document.createTextNode(replacedText), node);
}
}
}
}
但是浏览器只替换了我的 word1 而不是我的 word2 和 3 :( 武力帮不了,有人可以吗?
【问题讨论】:
-
想想你会如何用你知道的语言来做这件事。不会是这样的,对吧
标签: javascript jquery google-chrome google-chrome-extension var