下面是我的代码,它可以很好地编辑链接以根据位置将用户发送到网站,但我想以两种方式扩展此代码:
$(window).load(function () {
$.getJSON('http://api.wipmania.com/jsonp?callback=?', function (data) {
var country = data.address.country;
var urls = {
'Australia': 'www.website.com.au',
'New Zealand': 'www.website.co.nz'
}
var locstring = "/contact_us.html";
var locstring2 = "/about_us.html";
var cchUrl = 'www.website.com';
if(urls[country]) {
cchUrl = urls[country];
}
//alert(cchUrl);
$("#global").attr('href', 'http://' + cchUrl + locstring);
$("#global2").attr('href', 'http://' + cchUrl + locstring2);
});
});
<a href="http://www.website.com/contact_us.html" id="global" target="_blank">Contact Us</a>
<a href="http://www.website.com/about_us.html" id="global2" target="_blank">About Us</a>
如您所见,我必须设置两个变量(locstring,locstring2)和两个 id(global,global2)才能将用户发送到两个不同的位置,是否可以使用 id global 来更改域但它没有不管域之后是什么路径。我想简化代码,以便 www.thiswillchange.com/thiswontchange 使用一个 ID,而不是为不同的链接设置多个 ID 和变量。
作为一个不同的项目,我可以使用此代码(使用从第 1 点开始的更改)来创建“页面加载”,因此如果用户例如冲浪到页面 www.website.co.nz/contact_us.html,它会检测到他们来自澳大利亚并将他们发送到 www.website.com.au/contact_us.html 网站,反之亦然,或者这需要完全不同的方法。
请记住,当我添加更多站点时,我可能希望将来在列表中添加更多国家/地区。
编辑:也许我应该详细说明一下链接是国际斜杠页面上的文本,没有菜单,我只是使用全局重定向来更改链接域,以将用户发送到正确的网站以获得该位置,然后页面的路径。