我希望能够使用Chrome扩展程序将页面重定向到子域。经过多次尝试,没有任何作用。
理想情况下,我想:
“https://www.facebook.com” - > “https://www.facebook.com/groups/123456789”
和“https://www.facebook.com/ *”单独留下(其中*是外卡)。
对我来说,它应该很简单,因为没有变量,但它似乎不是。更复杂的是我昨天开始学习java,我对html,c ++,c,vb等没问题。
为什么呢?因为我使用Facebook来跟上问题表和我课程中的事情的最新解决方案,但我的新闻提要是a)分散注意力和b)垃圾。
如果你可以帮助你成为一个明星(如果你可以评论你的代码那么棒,因为我可以学习一点):D
到目前为止,我有,但它不起作用:(
manifest.json
{
"name": "Tabber",
"manifest_version" : 2,
"version": "1.0",
"description": "MyExtension",
"chrome_url_overrides": {
"*www.facebook.com*": "my.html"
},
"permissions": [
"tabs"
]
}
my.html
<!DOCTYPE html>
<html>
<head>
<head>
<meta http-equiv="refresh"content="0;URL=http://www.google.com">
</head>
</head>
<body>
</body>
</html>
答案 0 :(得分:1)
首先,你的错误。
chrome_url_overrides
只能覆盖书签,历史记录或新标签页。
https://www.facebook.com/groups/123456789不是&#34;子域&#34;
它的JavaScript,而不是Java
其次,如何做。
使用content script相对容易。您甚至不需要tabs
权限,只需获得Facebook的主机许可。
清单:
{
"name": "Tabber",
"manifest_version" : 2,
"version": "1.0",
"description": "MyExtension",
"content_scripts": [
{
matches: ["*://www.facebook.com/*"],
js: ["myscript.js"],
runAt: "document_start"
}
]
}
然后,当任何标签导航到任何Facebook页面时,将注入您的脚本。
脚本本身应检查URL并在需要时离开:
// myscript.js
if(window.location.pathname == "/") {
window.location.replace("https://www.facebook.com/groups/123456789");
}
我自己不使用FB,所以不确定它是否会破坏任何逻辑;但这是你想要做的事情。