地理位置脚本

阿德里安·拉方(Adrien Lafond)

在我的网站上,使用以下脚本通过“购买”按钮来重定向访客在一个网上商店或其他网上商店的访问,具体取决于他们的位置(国家或大洲)。

我需要将国家/大陆的值用于其他目的,但是作为JS新手,我无法做到这一点 getgeoip.json.continent_code

// Buy Button 
function getgeoip(json) {
    // json.continent_code = "EU";
    // json.country_code = "AU";
    //window.console && console.log(json);
    if (json.country_code == "US") {
        $("#link-amazon")
            .css("display", "none");
        $("#buybtn")
            .css("display", "block");
    } else if (json.country_code == "GB") {
        $("#link-amazon")
            .css("display", "none");
        $("#buybtn")
            .css("display", "block");
        $("#buybtn")
            .attr("action", "http://shop-us.mystore.io/cart/add ");
        $("#buypdt")
            .attr("value", "8819215683");
    } else if (json.country_code == "AU") {
        $("#link-amazon")
            .css("display", "none");
        $("#price")
            .css("display", "block");
        $("#price2")
            .css("display", "none");
        $("#buybtn")
            .css("display", "block");
        $("#buybtn")
            .attr("action", "https://shop-au.mystore.io/cart/add ");
        $("#buypdt")
            .attr("value", "19889525059");
    } else if (json.continent_code == "EU") {
        $("#price")
            .css("display", "block");
        $("#price2")
            .css("display", "none");
        $("#link-amazon")
            .css("display", "none");
        $("#buybtn")
            .css("display", "block");
        $("#buybtn")
            .attr("action", "http://shop-eu.mystore.io/cart/add ");
        $("#buypdt")
            .attr("value", "8346318915");
    } else {
        $("#link-amazon")
            .css("display", "none");
        $("#buybtn")
            .css("display", "block");
        $("#price")
            .css("display", "none");
        $("#price2")
            .css("display", "block");
        alert('hi');
    }
}
$(document)
    .ready(function () {
        $.ajax({
            url: 'https://telize-v1.p.mashape.com/geoip'
            , type: 'GET'
            , data: {}
            , dataType: 'json'
            , success: function (data) {
                getgeoip(data);
            }
            , error: function (err) {}
            , beforeSend: function (xhr) {
                xhr.setRequestHeader("X-Mashape-Authorization", "KFiiN9M9iImsh57NIcdOcOPVltLDp17HQ6Gjsn5PXFCBAzL8UM"); // Enter here your Mashape key
            }
        });
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<form action="http://shop-eu.mystore.io/cart/add" method="post" target="_blank" id="buybtn" style="display: block;">
    <input name="return_to" type="hidden" value="cart">
    <input name="handle" type="hidden" value="mystore">
    <input type="hidden" name="id" value="8739494597" id="buypdt">

    <div class="buy-button-wrapper">
        <button type="submit" id="btn-buy" class="btn-buy" style="margin-top: 0;"><div class="cart"></div>BUY</button>
    </div>
</form>

马赫穆特·甘多杜

我认为也许您可以使用saas解决方案。我使用freegeoip。

$.getJSON('//freegeoip.net/json/?callback=?', function (data) {
                alert('Your Country is ' +data.country_name);
                console.log(JSON.stringify(data, null, 2));
           });

回复:

{
  "ip": "78.187.196.149",
  "country_code": "TR",
  "country_name": "Turkey",
  "region_code": "38",
  "region_name": "Kayseri",
  "city": "Kayseri",
  "zip_code": "",
  "time_zone": "Europe/Istanbul",
  "latitude": 38.7322,
  "longitude": 35.4853,
  "metro_code": 0
}

详细信息:如何仅使用javascript获取客户端的IP地址?

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章