My matches scheme:
"content_scripts" : [
{
"matches" : [
"https://stackoverflow.com/questions#epic*"
],
"js" : ["silly.js"]
}
],
So if the user went to a webpage (like https://stackoverflow.com/questions) then added #epic it would go to https://stackoverflow.com/questions#epic but would have #epic on the end of the URL, which would activate the content script silly.js.
That's what's supposed to happen, but that doesn't work.
See Content scripts, Match Patterns. Match patterns do not operate on the query nor the fragment portions of a URL.
To restrict a content script to a given hash, use the include_globs and/or exclude_globs properties.
For example, in this case you might use:
"content_scripts" : [ {
"matches" : [
"*://stackoverflow.com/questions/*"
],
"include_globs" : ["*#epic*"],
"js" : ["silly.js"]
} ],
来源:https://stackoverflow.com/questions/15959090/how-to-trigger-a-chrome-extension-content-script-for-a-given-hash-in-the-url