像美团等网站打开的时候,都会自动跳转到我们访问者当前所在的城市,这样极大的提高了用户体验度,我们如何实现这一功能呢?其实百度API里面有这个接口插件,根据用户的IP返回出用户所在的城市名。 以下是我整理出来的完整范例,手机、pc端测试都可以正常获取出城市名,大家可以参考一下: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>自动获取定位访问者当前城市</title> <!--不可省略--> <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=您的密钥"></script> <!--不可省略--> </head> <body> <!--不可省略--> <div id="bdMapBox" style="display:none;"></div> <script type="text/javascript"> // 百度地图API功能 var map = new BMap.Map("bdMapBox"); var nowCity = new BMap.LocalCity(); nowCity.get(bdGetPosition); function bdGetPosition(result){ var cityName = result.name; //当前的城市名 /*自定义代码*/ atCity.innerHTML = cityName; /*自定义代码*/ } </script> <!--不可省略--> <p>您当前所在的城市为:<span id="atCity"></span></p> </body> </html> 说明一下:<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=您的密钥"></script> 没有密匙可能会在页面运行的时候弹出提示警告,为了让用户有更好的体验度,可以到百度地图开放平台 http://lbsyun.baidu.com/apiconsole/key 创建一个应用,就会得到一个密匙,填到这里就好了。 |