我有一个非常国际化的网站,但我需要专门为我们的英国客户制作一个弹出窗口。
我需要的是:
页面加载:来自英国的用户是谁吗?
如果是,则显示div。
否则
Div仍然隐藏着。
答案 0 :(得分:3)
您可以使用 freegeoip 执行此操作。 既然你提到要使用纯JavaScript(而不是jQuery),你应该使用JSONP来获取国家:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset=utf-8>
<title>UK localisation</title>
</head>
<body>
<div id="myDiv" style="display:none">
<h1>Kittens</h1>
</div>
<script>
function toggleDiv(content) {
console.log(content.country_code);
if(content.country_code === 'GB') //Or GBR, or UK, I'm not sure.
{
document.getElementById('myDiv').style.display = "inline";
}
else
{
alert("You are not from UK, you are from " + content.country_code);
document.getElementById('myDiv').style.display = "none";
}
}
window.onload = function()
{
// create script element
var script = document.createElement('script');
// passing src with callback name
script.src = 'http://freegeoip.net/json/?callback=toggleDiv';
// insert script to document and load content
document.body.appendChild(script);
}
</script>
</body>
</html>