更改href属性中的特定字符串

时间:2013-10-08 17:22:39

标签: javascript jquery html

感谢您抽出宝贵时间帮助我!

我想从这个特殊div #nav

中的每个li上的href中删除特殊链接示例“/ siteurl /”

现在如何:

<div id="nav" class="menu">
   <ul class="menu">
     <li><a href="/siteurl/#home">Home</a></li>
     <li><a href="/siteurl/#services">Services</a></li>
</ul>   
</div>  

我需要像这样:

<div id="nav" class="menu">
   <ul class="menu">
     <li><a href="#home">Home</a></li>
     <li><a href="#services">Services</a></li>
</ul>   
</div> 

3 个答案:

答案 0 :(得分:1)

像这样的代码应该这样做:

var cutLen = "/siteurl/".length;

$("li a").each(function() {
  this.href = this.href.substr(cutLen);
});

此外,您不得在此处发布问题而不显示任何尝试。我们不为您编写代码

答案 1 :(得分:1)

简单的字符串替换方法可以帮助您

$(".menu a").each(function() {
  this.href = this.href.replace(/\/siteurl\//,"");
});

答案 2 :(得分:0)

here's the snippet

和代码(应该是自我解释)

$(document).ready(function(){
  //the <li> > <a>'s of the menu
  $('#nav li a').each(function(){
    //what we are looking fore
   var search = '/siteurl/';
    //the current url
    var href = $(this).attr('href');
    //check if url begins with pattern
    if(href.indexOf(search) === 0){
      //now remove it
      href = href.substr(search.length);
      //and update the attribute
      $(this).attr('href', href);
    }
  });
});