Chciałbym uruchomić skrypt po załadowaniu karty pod podanym adresem URL. To prawie działa, ale faktycznie id nie :) To jest mój plik manifestu:Jak uruchomić ten skrypt po ponownym załadowaniu karty (rozszerzenie chrome)?
{
"manifest_version": 2,
"name": "Sample Extension",
"description": "Sample Chrome Extension",
"version": "1.0",
"content_scripts":
[
{
"matches": ["http://translate.google.hu/*"],
"js": ["run.js"]
}
],
"permissions":
[
"activeTab",
"tabs"
],
"browser_action":
{
"default_title": "Sample",
"default_icon": "icon.png"
}
}
a to run.js:
chrome.tabs.onUpdated.addListener(
function (tabId, changeInfo, tab)
{
if (changeInfo.status === "complete")
{
chrome.tabs.executeScript(null, {file: "program.js"});
}
}
);
W programs.js tylko alerty jakiś tekst (jeszcze). Kiedy umieszczę alert w pierwszym wierszu pliku run.js, zostanie on ostrzeżony, ale kiedy umieści go w pliku if, to nie. Nie mogę znaleźć problemu. Czy coś napisałem źle?
Czy sprawdziłeś błędy w konsoli programisty? Myślę, że musisz uruchomić to ze strony w tle, a nie ze skryptu treści. Uważam, że skrypty z zawartością mogą wykorzystywać tylko chrome.extension, a wszystkie inne metody w interfejsie API muszą być wywoływane na stronie background.js. – QFDev
Hooking https://stackoverflow.com/q/23333771/632951 – Pacerier