Das ist mein erster Hack beim Schreiben einer Chrome-Erweiterung. Ich möchte, dass jedes Mal, wenn eine Facebook-Seite geladen wird, ein ziemlich einfaches JavaScript ausgeführt wird. Es macht alles, was ich will außer, dass aus irgendeinem Grund, führt es nur mein Skript, wenn ich die Schaltfläche Aktualisieren drücken. Wenn z.B. Ich habe auf das Facebook-Logo geklickt, oder ich gehe zu einem Status aus meinen Benachrichtigungen, das Skript läuft nicht ... bis ich auf Aktualisieren klicke.Chrome Extension, die auf allen Facebook-Seiten laufen soll, wird nur ausgeführt, wenn ich auf Refresh klicke
Hier ist mein Manifest:
{
"name": "Anti-social Reader",
"version": "1.0",
"description": "Defeats 'social reader' apps on Facebook, by letting you just see the news story directly without installing the app.",
"content_scripts": [
{
"matches": ["http://*.facebook.com/*", "https://*.facebook.com/*"],
"js": ["kill_social_reader.js"],
"run_at": "document_end",
"all_frames": true
}
]
}
ich es brauche, bis document_end zu warten, weil es das DOM der geladenen Seite geändert wird. Ich bin sicher, es ist etwas Dummes ... irgendwelche Ideen?
Danke für die Antworten. Ich überprüfte mtk's, weil er der erste war, der reagierte :) Es ist nicht so einfach wie ein Listener für das DOM zu ändern, weil mein Skript das DOM selbst ändert ... also vermute ich, dass das schlecht wäre. :) Ich habe Amaans Lösung ausprobiert (ohne es zu verstehen) und es hat nicht richtig für mich funktioniert, aber ich habe wahrscheinlich etwas falsch gemacht - ich habe keine Zeit damit verbracht es zu debuggen. In jedem Fall, ich denke, meine grundlegende Frage wurde beantwortet, jetzt ist es nur eine Frage der Auslösung des richtigen Ereignisses. Danke für die Antworten !! – user435779
Beachten Sie, dass es bei größeren Websites, insbesondere bei Einzelseiten-Apps, häufiger vorkommt, dass kein vollständiger Seiten-Reload durchgeführt wird, sondern ein Statuswechsel stattfindet. Z.B. YouTube, Trello, Twitter. Hier ist eine andere Lösung, die Chrome WebNavigation API und Tabs API verwendet: http://StackOverflow.com/a/21071357/72321 – Dennis