网站上有一个网址列表,我需要在主网址之后切换每一个网址。
<div class="collection-name">
<a href="http://shop.something.net/collections/100-grams/a.s.a.p." title="100 Grams">/collections/madelinetosh/a-s.a.p.</a>
</div>
<div class="collection-name">\
<a href="http://shop.something.net/collections/2-stitches/a.s.a.p." title="2 Stitches"><i class="check-icon"></i> 2 Stitches</a>
</div>
在这个例子中,我需要a.s.a.p中的切换点。到a-s-a-p
我对JQ很新,所以,这是我的代码无法运作的耻辱
$("div.collection-name a").each(function(){
console.log($("div.collection-name a").get(0))
$("div.collection-name a").each.href( $("div.collection-name a").get(0).pathname.replace('.', '-') );
});
答案 0 :(得分:1)
我还没有详细检查过你的所有逻辑,但考虑到默认replace
只对第一次出现的角色进行检查。如果要替换all,则需要使用像这样的正则表达式
pathname.replace(/\./g, '-');
修改强>
更好地了解您的代码,这就是您需要通过&#39;替换点所需的内容 - &#39;
$("div.collection-name a").each(function(){
var hrefArray = $(this).prop('href').split('/');
for(var i = 3; i < hrefArray.length; i++) {
hrefArray[i] = hrefArray[i].replace(/\./g, '-');
}
$(this).prop('href', hrefArray.join('/'));
});