任何Javascript GURU在这里制作这个脚本?如果更改了锚点重定向页面

时间:2016-01-06 22:55:05

标签: javascript jquery html redirect url-redirection

Javascript专家,

我在自己创建的模板中使用了一个链接......如下所示:

<a href='http://www.allbloggertricks.com'>Blogging Tips</a>

不,我想要将锚文字博客提示更改为任何其他文件,然后应将该网页重定向到example.com。

示例:如果链接变为如此:

<a href='http://www.allbloggertricks.com'>Awesome Tips</a>

现在页面应重定向到example.com,因为其锚文本已从&#34;博客提示&#34; 更改为

&#34;很棒的提示&#34;

1 个答案:

答案 0 :(得分:0)

不确定您是希望页面自动重定向还是仅动态更改URL。当你使用术语'重定向'时,我会选择第一个。一旦页面加载,就运行这样的东西。

var anchorTags = document.getElementsByTagName("a");
var len = anchorTags.length;
while (len--) {
    var anchor = anchorTags[len];
    if (anchor.textContent === "Awesome Tips") {
        anchor.href = "http://example.com/";
        anchor.click();
    }
}

希望有所帮助。 :)

编辑:继续下面的评论。

如果我理解正确,您需要识别特定的锚标签,然后检查它的文本是否为“博客提示”。首先要做的是给你的目标锚标签一个唯一的标识(id)......

<a href="http://..etc.." id="the_link">Blogging Tips</a>

现在您可以轻松找到它...

var theLink = document.getElementById('the_link');

然后你可以做一个类似于上面建议的检查,但是这一次看看文本是不是'博客提示'......

if (theLink.textContent !== "Blogging Tips") {
   // .... do something ...
}

如果您想重定向页面,最简单的方法是使用window.location.assignMore on this at MDN)。

您只能在页面加载后进行此检查,因此您需要将其包含在window.onload函数中,或者将其放入可在页面加载后调用的函数中{{3 }})。假设第一个选项,JavaScript现在看起来像这样......

window.onload = function() {
  var theLink = document.getElementById("the_link");
  if (theLink.textContent !== "Blogging Tips") {
    window.location.assign("http://example.com/");
  }
};

但是,如果您的模板用户删除或更改了锚标记的ID,或者更改了您的JavaScript,那么您几乎无能为力。

希望有所帮助。 :)