Google Chrome Extension - Script Injections
In addition to the answers above I notice that in your contentscript.js
you are just adding another script i.e script.js
Why don't you directly add script.js
through content_scripts in manifest.json
.
- In your manifest file,
"manifest_version": 2
is specified. This automatically activates a stricter mode, in which all extension's files are not available to web pages by default. - Your original code would never work, because the
<script>
element is immediately removed after injection (the script file does not have a chance to load).
As a result of 1., the following error shows up in the console:
Failed to load resource chrome-extension://invalid/
To fix the problem, add script.js
to the whitelist, "web_accessible_resources"
in your manifest file
:
{ "name": "Chrome Extension", "version": "1.0", "manifest_version": 2, "content_scripts": [{ "matches": ["http://pagetoinject/script/into/*"], "js": ["contentscript.js"] }], "web_accessible_resources": ["script.js"] }