新文档
来源:互联网 发布:ipad读书软件推荐 编辑:程序博客网 时间:2024/06/05 03:42
关于地理位置的总结
要求:
1.在页面上展示地图,并且在输入框中输入数据库中的IP地址,在页面的地图上就是显示标记.
2.地图的引用可以调用谷歌自带的,也可以使用echarts官网上提供的world.js文件
3.语言是结合html,js,jquery,和php,其中php是为了读取出服务器数据库里的数据
效果展示(定位不是太准确,粗糙)
准备工作
- 找到百度地图的开放平台的普通ip定位部分
http://lbsyun.baidu.com/index.php?title=webapi/ip-api - 根据官网给出的文档,最主要的是构造url和对于返回之后的数据的经纬度的获取
- 经过测试之后,一开始没有注意到跨域的问题,使用的是$.ajax,程序出现错误,,解决办法请看http://www.cnblogs.com/brucemengbm/p/7363746.html
代码
html部分没列出,给出的是关键的js部分
`<script type="text/javascript"> <?php require_once("mysql.php"); $mysqlcon=new MySqlCon; $mysqlcon->myconnect(); mysql_query("SET NAMES 'utf8'"); $mysqlcon->myopen(); $db_select=mysql_select_db("Celery_Data"); if(!$db_select) echo ("open failed"); ?> var storeResult=new Array(); $(".search-map").on("click",function(){ var value_map=$("#input-map").val(); //alert(typeof(value_map)); //在这里使用ajax传递到后台 $.ajax({ type:"POST",//提交方式 url:"view.php", data:{name:value_map},//发送到服务器的数据 }); //在服务器接收数据,并做处理 <?php $value_map=$_POST['name']; //print_r($value_map); $sql_map="select " ?> ak='au4bhMjPweW1P2giTO8ztBi1GDiqxFz7'; //构造url url='https://api.map.baidu.com/location/ip'+'?ak='+ak+'&ip='+value_map+"&coor=bd09ll"; $.getJSON(url+"&callback=?",function(data){ //处理data数据 if(data.status==0) { storeResult.push( { value:[data.content.point.x,data.content.point.y] }); myChartmap=echarts.init(document.getElementById('mychart-map')); var optionworld_map={ //图形提示框组件 tooltip:{ show:true, trigger:'item', enterable:true,//鼠标可以进入提示框 }, //图例 legend: { data:['IP'] }, geo:{ //type:'map', show:true, map:'world', roam:true, left:'10%', itemStyle:{ normal:{ //areaColor:'#404a59', color:'#404a59', borderColor:'#696969'//图形的边框的颜色 }, emphasis:{ //areaColor:'#A9A9A9', color:'#A9A9A9', opacity:0.5 } } }, series:[ { type:'effectScatter', coordinateSystem:'geo', effectTpe:'ripple',//设置的是波纹的涟漪 showEffectOn:'render', rippleEffect:{ brushType:'stroke' }, symbolSize:40, data:storeResult, itemStyle: { normal: { color:'#f4e925', shadowBlur:10, shadowColor:'#333' } }, }] }; myChartmap.setOption(optionworld_map); console.log(storeResult); } else {alert("请求失败!!")} }) });</script>
`
阅读全文
1 0
- 新文档
- 新文档
- 新文档
- 新文档
- 新文档
- 新文档
- 新文档
- 新文档
- js加载新文档
- vbsedit 无法创建新文档
- 分页保存为新文档
- odoo新API整合文档
- 多文档程序,开始不生成新文档
- 多文档DOC/VIEW框架不创建新文档
- MFC 多文档程序 手动创建新文档的方法
- 云享 文档协同,开启新的文档协作模式
- 关于"建立新文档失败"的问题!
- 我的新记述文档库
- C++学习笔记05
- sublime 自用插件
- Qt for Android开发环境搭建及测试过程记录
- BootStrap中关于Select下拉框选择触发事件及扩展
- 小程序对接php接口接收数据
- 新文档
- nginx负载均衡简单配置
- 转JavaMail发送和接收邮件API(详解)
- sed用法
- Error loading MySQLdb module: No module named MySQLdb.
- NodeJs
- redis-cli之redis命令
- Android之TextView设置String文本颜色
- ORACLE VARCHAR2最大长度问题[作者:潇湘隐者]