如何将javascript函数应用于具有特定域的href

时间:2014-11-01 21:54:35

标签: javascript jquery url href

我需要将重定向添加到我网站的其他链接中,我使用

window.onload = function() {
   var anchors = document.getElementsByTagName("a");

   for (var i = 0; i < anchors.length; i++) {
       anchors[i].href = "http://shorter.com/?redirect=" + anchors[i].href
  }
}

这将添加到所有链接,但我只需指定域重定向它们,如:

var domains = ['depositfiles.com', 'rapidshare.com']; 

修改

例如我的页面有很多链接(file.com,depositfiles.com,inda.com)。 我只需要在&#34;域&#34;中使用href。变量使用我的重定向器重定向,而其他变量保持不变(直接)。

喜欢depostitfiles.com http://shorter.com/?redirect=http://depositfiles.com/

对于inda.com http://inda.com

1 个答案:

答案 0 :(得分:0)

只需使用主机名匹配:

var domains = ["google.com", "stackoverflow.com"];

window.onload = function() {
   var anchors = document.getElementsByTagName("a");

   for (var i = 0; i < anchors.length; i++) {
      for(var j = 0; j < domains.length; j++){
        if(anchors[i].hostname === domains[j]){ //domain present
          anchors[i].href = "http://shorter.com/?redirect=" + anchors[i].href
          break;
        }
      }
  }
}

好点@ jonathan-grey - 编辑