Ich versuche, eine Erweiterung für Chrome zu erstellen, die alle Vorkommen eines Namens auf der Webseite ändert. (Zum Beispiel, wenn die Seite das Wort "das" hat, ändert es in einen anderen Namen).
Die Idee ist, diese Änderung vorzunehmen, wenn der Benutzer auf die Browser-Schaltfläche klickt.
Mein Problem ist, dass er die Änderungen nicht vornimmt! Ich habe keine Ahnung, was ich falsch mache.
Hier ist die manifest.json:
{
"name": "App Name",
"description": "App description",
"version": "1.0",
"background": {
"scripts": ["jquery.min.js", "jquery.ba-replacetext.min.js","background.js"]
},
"permissions": [
"tabs", "http://*/*", "https://*/*"
],
"browser_action": {
"default_title": "App name",
"default_icon": "icon.png"
},
"manifest_version": 2
}
Und hier ist die background.js:
chrome.browserAction.onClicked.addListener(function(tab) {
var state = document.readyState;
var carregou = false;
var matches = document.body.innerText.match(regex);
if (state == "interactive"|| (!carregou)){
$("body *").replaceText( /That/gi, "" );
var regex = /That/gi;
matches = document.body.innerText.match(regex);
if(matches){
alert("Reload the page (f5)");
}else{
alert("All changes done! :D");
carregou = true;
}
}
});
Ich habe ein Programm erstellt, das die Seite wechselt, ohne auf die Schaltfläche im Browser zu klicken, und es funktioniert. Hier ist der Code:
{
"name": "App Name",
"version": "1.0",
"manifest_version": 2,
"description": "App description.",
"content_scripts": [
{
"matches": ["http://www.facebook.com/*"],
"js": ["jquery.min.js","jquery.ba-replacetext.min.js", "script.js"],
"run_at": "document_end"
}
]
}
sript.js:
var state = document.readyState;
var carregou = false;
var matches = document.body.innerText.match(regex);
if (state == "interactive"|| (!carregou)){
$("body *").replaceText( /That/gi, "" );
var regex = /That/gi;
matches = document.body.innerText.match(regex);
if(matches){
alert("Reload the pahe (f5)");
}else{
alert("All changes done! :D");
carregou = true;
}
}
Chrome Version: 23.0.1271.95 m auf Windows 7 Dankeschön!