我已阅读关于同一主题的其他问题,并且我觉得我理解要做什么,但它不起作用。用jQuery替换href的一部分
我有两个域,出于必要性。在一个特定页面上,我试图更新链接,以便它们指向第二个域。它的功能,如果我只是循环每个'a'元素,但不是如果我尝试匹配特定的链接。我离开了我的第一次尝试评论,我不确定哪种方法更好。
如果某个页面位于特定页面上,但来自不同国家/地区,则会调用此函数。我看不到我做错了什么。
我认为this.href应该得到完整的,合格的URL,但它似乎并没有这样做。
function updateLinksToUSAstore() {
$('a[href*="manitobahdev.myshopify.com"]').each(function() {
// $(this).attr('href', $(this).attr('href').replace('manitobahdev.myshopify.com', 'manitobahdev-us.myshopify.com'));
this.href = this.href.replace('manitobahdev', 'manitobahdev-us');
});
var CountryName = localStorage.getItem('CountryName');
// Change currently selected country text
$('#country-label, #country-label-mobile').text(CountryName);
}
我看到不工作的唯一方法是,如果'$( 'A [HREF * = “manitobahdev.myshopify.com”]')'返回任何内容。你记录了返回的数组吗? –
你能告诉我们一些'a'元素吗?我只是尝试了一个快速[jsfiddle](https://jsfiddle.net/kc6zLdpe/1/),它工作正常。确保在测试JavaScript时不使用缓存。 – Wikiti
@Wikiti问题似乎是链接是相对的,但不应该this.href获取完整的URL? – Patrick