重定向页面但不重定向子域

时间:2014-04-09 12:44:34

标签: google-chrome google-chrome-extension url-redirection

我希望能够使用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>

1 个答案:

答案 0 :(得分:1)

首先,你的错误。

其次,如何做。

使用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,所以不确定它是否会破坏任何逻辑;但这是你想要做的事情。