当前位置:首页 > 技术博客 > JavaScript > 前端通过JS获取用户位置信息然后跳转不同的子域名

前端通过JS获取用户位置信息然后跳转不同的子域名

6年前 (2020-03-22)JavaScript969

本期主要内容:根据用户的位置信息跳转不同的网站,比如:北京用户访问跳转 beijing.a.com  上海用户访问跳转 shanghai.a.com,具体演示案例可以参考:www.12315.team

一、首先要获取用户的位置信息:
   通过js:https://ip.ws.126.net/ipquery 来获取位置信息
   lo 代表当前省份 ,例:山东省      
   lc 代表当前城市 ,例:济南市

声明:本文沫娱网-天沫原创!转载请注明出处!

二、有了用户的中文位置信息后,我们需要将中文位置信息转换成英文:
    

pinyin.getFullChars(lc).toLowerCase();


 pinyin.getFullChars() 这个是我一个单独封装的方法,项目源码:https://cdnbaidu.tmicloud.com/jquery/Convert_Pinyin.js  把这个js下载下来放到你网站的公共头部就可以了其他的不用改
 lc 代表用户当前城市, 这个时候 返回的是城市的拼音,例:jinanshi
 如果你想用用户的省份的话就改成 lo,例:pinyin.getFullChars(lo).toLowerCase(); 这时候返回的是:shandongsheng
声明:本文沫娱网-天沫原创!转载请注明出处!

三、先将上面的拼音放到一个变量里面存起来,有了拼音之后就可以直接设置跳转了:
     

    var lcpinyin = pinyin.getFullChars(lc).toLowerCase();
   //这时候 lc的值是:jinanshi
   //假如你的主域名是:www.a.com 要把济南市用户访问就跳转  jinanshi.a.com  
   window.location.href="http://" + lcpinyin + ".a.com";  //常用的js字符串拼接



声明:本文沫娱网-天沫原创!转载请注明出处!
四、到这里就可以实现基本跳转功能了,因为有些IP无法返回正确的用户位置(大多数是手机用户,宽带用户的准确率 95%),所以要先判断返回的数据是否为空:

if(lc != ''){
        //如果正确返回用户位置执行这里的代码,例:济南市
       var lcpinyin = pinyin.getFullChars(lc).toLowerCase();
       window.location.href="http://" + lcpinyin + ".a.com";
    }else{
        //如果没有返回用户的信息执行代这里的代码,建议不作任何操作
    }


文沫娱网-天沫原创!转载请注明出处!

五、完整demo:

<script src='http://ip.ws.126.net/ipquery'></script>
   <script src='http://cdnbaidu.tmicloud.com/jquery/Convert_Pinyin.js'></script>  //这是我自己用的,需要把这个里面的源码下载下来放到自己的项目里就可以了
    <script>
   if(lc != ''){
        //如果正确返回用户位置执行这里的代码,例:济南市
       var lcpinyin = pinyin.getFullChars(lc).toLowerCase();
       window.location.href="http://" + lcpinyin + ".a.com";
    }else{
        //如果没有返回用户的信息执行代这里的代码,建议不作任何操作
    }

   </script>


把上面的代码放在网站头部就可以了,正文到此结束。。。

版权声明:本文由 LzxBlog 发布,如需转载请注明出处。

本文链接:https://www.liuzhixi.cn/html/10.html

标签: HTMLJavaScript

相关文章

JavaScript 中定义数组和操作数组

JavaScript 中定义数组和操作数组

一.认识数组数组就是某类数据的集合,数据类型可以是整型、字符串、甚至是对象Javascript不支持多维数组,但是因为数组里面可以包含对象(数组也是一个对象),...

JavaScript监听页面复制

JavaScript监听页面复制

<script>     /** 监听copy事件 */   &...

JavaScript实现网页中繁体简体切换,纯Es5写的高兼容性

JavaScript实现网页中繁体简体切换,纯Es5写的高兼容性

HTML代码<span onclick="zh_tran('t');">繁体中文</span&g...

原生js自定义雷达图

原生js自定义雷达图

完整代码:<head>     <style> body{   &nb...

响应式人物介绍列表ui切换特效

响应式人物介绍列表ui切换特效

一款js css3制作响应式的人物介绍图文列表,带左右按钮控制列表滑动切换效果。可用于企业团队人物介绍ui布局。下载链接: https://pan.baidu....

js轮播图滑块过渡特效

js轮播图滑块过渡特效

js flipping插件制作简洁时尚的带缩略图的大图轮播幻灯片展示,点击左右箭头按钮,标题,缩略图,大图滑动切换效果。下载链接: https://pan.ba...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。