【问题标题】:GreaseMonkey: Redirect immediately to special web pageGreaseMonkey:立即重定向到特殊网页
【发布时间】:2015-02-18 10:35:06
【问题描述】:

我熟悉不同的编程语言,但实际上我是 javascript 和 GreaseMonkey 的新手。经过一番搜索(在这里和网上),我找不到以下问题的答案:

我想要一个在 Zeit Online 上运行的本地 javascript,并自动将我转发到完整的文章视图(不分为几个子页面)。

示例: 当我打电话 www.zeit.de/wirtschaft/2015-02/griechenland-euro-schaeuble-varoufakis

我想立即被重定向到 www.zeit.de/wirtschaft/2015-02/griechenland-euro-schaeuble-varoufakis/komplettansicht (注意最后的 /komplettansicht)。

豁免: 在 www.zeit.de/index 我什么都不想改变。可以说,扩展 URL 需要网页 URL 由 www.zeit.de 和一个子目录组成。

如何在 javascript/GreaseMonkey 中做到这一点?

更新

 var regex = /^(https?:\/\/.+\.zeit\.de\/.+\/.+)$/i;

.replace(regex, "$1/komplettansicht");

应该出现在代码中。但是如何替换 URL 并调用它呢?

【问题讨论】:

  • $1/komplettansicht 的正则表达式 (https?:\/\/.+\.zeit\.de\/.+\/.+) 可以工作...
  • 我宁愿建议使用redirector addon 而不是自定义脚本。它支持一些基本级别的正则表达式和反向引用。
  • 谢谢,anishsane,这行得通。这是我的重定向器模式:“includePattern”:“http://(.+).zeit.de/(.+)/(.+)”、“excludePattern”:“.+/komplettansicht”、“redirectUrl”: "http://$1.zeit.de/$2/$3/komplettansicht",

标签: javascript url redirect greasemonkey


【解决方案1】:

首先在 javascript 控制台中试试这个:

window.location = window.location.href + "/komplettansicht";

可能需要将这行代码包装在 if 语句中,以检查您是否不再位于 zeit.de 的主页上,并且该页面不会以“komplettansicht”结尾(它将永远重定向到komplettansicht/komplettansicht/komplettansicht...)

但随后可能会打开一个带有警告的对话框,询问您是否真的要离开该页面。不确定。

如果不起作用,请将window. 替换为unsafeWindow.(Greasemonkey 使用此名称的新对象包装原始窗口对象)

【讨论】:

  • 感谢无限重定向的提示。如上述解决方案中所述,我不得不考虑使用重定向器插件
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-06
  • 2022-11-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多