远控开发记录04_显示手机位置

原创 2016年08月29日 16:38:22

既然前面已经将手机的位置信息写入了数据库。那么我们需要在web端进行显示。先看效果。

这里写图片描述

这是笔者开发的远控系统的主页。用户登录之后可见,因为比较匆忙。比没有对界面ui做过多的要求。可以看到右方的有一个地图点击“我的手机位置”之后用来显示手机的位置。那么同样使用到高德地图api。
配置过程可以参考高德地图的官方文档 http://lbs.amap.com/api/javascript-api/summary/

笔者使用thinkphp开发前端。即在前面提到的mvc框架中的view视图中新建一个html。下面是一段JavaScript的代码。用来显示地图。、

首先是定义一个放置地图的区域。id是container。

</div>
    <div style="width:45%; height:500px;margin-left: 50%;margin-top: 3.5%;" id="container">
    </div>

接下来对这片区域进行渲染。这只是对地图的初始化

    var map = new AMap.Map('container', {
        resizeEnable: true,
        center: [116.39, 39.9],
        zoom: 17
    });
    var marker = new AMap.Marker({
        position: map.getCenter()
    });
    marker.setMap(map);
    // 设置鼠标划过点标记显示的文字提示
    marker.setTitle('手机的位置');


    var markerContent = document.createElement("div");
    // 点标记中的图标
    var markerImg = document.createElement("img");
    markerImg.className = "markerlnglat";
    markerImg.src = "http://webapi.amap.com/theme/v1.3/markers/n/mark_b.png";
    markerContent.appendChild(markerImg);
    var markerSpan = document.createElement("span");
    markerSpan.className = 'marker';

    map.plugin(['AMap.ToolBar'], function () {
        toolbar = new AMap.ToolBar();
        map.addControl(toolbar);
    })

接下来是“我的手机位置”这个按钮的点击事件响应函数

 $.post("/home/index/getxy",
                function (data, status) {
                    if (status) {
                        data = $.parseJSON(data);
                        px = parseFloat(data.x);
                        py = parseFloat(data.y);
                        pos = data.position;
                        map.setCenter([px, py]);
                        marker.setPosition([px, py]);
                        // 点标记中的文本
                        markerSpan.innerHTML = pos;
                        markerContent.appendChild(markerSpan);
                        marker.setContent(markerContent); //更新点标记内容
                    }
                });

这里要提到的是$.post方法是基于jquery框架的。
具体的配置可以参考官方的文档 :https://api.jquery.com/
中文的网址是这个:http://www.jquery123.com/
代码中的”/home/index/getxy”也就是我们上次提到的网址。在控制器中编写的处理函数。而function (data, status)是处理结果的监听函数。对结果进行处理。有不明白的地方均可以在其他地方找到答案。也欢迎留言笔者尽力给各位解答。

我是搬运工,热爱我的热爱

版权声明:本文为博主原创文章,未经博主允许不得转载。

记录-Android根据手机gps或者网络获取当前位置

如果应用需要定位城市,可以这么做:       先获取LocationManager 然后根据可用的位置提供器获取Location,代码如下       private LocationManag...
  • Canra
  • Canra
  • 2016年08月24日 09:50
  • 3666

Symbian OS C++手机应用开发.part04.rar

  • 2010年06月22日 08:59
  • 1.95MB
  • 下载

远控开发记录02_手机定位

手机丢失后,需要知道手机所在的位置,那么手机定位是远控系统必要的功能。 笔者使用高德地图api来实现手机定位。当然也可以不使用。 那么使用高德地图api首先进入http://lbs.amap.co...

ROS Learning-028 (提高篇-006 A Mobile Base-04) 控制移动平台 --- (Python编程)控制虚拟机器人的移动(不精确的制定目标位置)

ROS 提高篇 之 A Mobile Base-04 — 控制移动平台 — (Python编程)控制虚拟机器人的移动(不精确的制定目标位置)我使用的虚拟机软件:VMware Workstation ...

Android API指南(二)自定义控件04之 位置说明

1. android:padding和android:layout_margin android:layout_margin:指该控件距离边父控件的边距。 android:layout_mar...

04 将当前位置用大头针标注到百度地图上

O 需求 将当前位置用大头针标注到百度地图上 一 准备 详见《01 如何将百度地图加入IOS应用程序?》 注意,此应用程序运行环境是IOS DEVICE 。所以,相应的开发包一定要做好调整。 ...
  • ygm900
  • ygm900
  • 2012年11月21日 14:34
  • 1415

关于手机微信的聊天记录在手机中的存放位置及关系

1.手机微信记录的图片及语音文件存放目录:/sdcard/Tencent/MicroMsg/名称为'32位字符串'的文件夹/ PS: 32位字符串的名称是根据微信用户的信息生成的md5加密字符串; 同...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:远控开发记录04_显示手机位置
举报原因:
原因补充:

(最多只允许输入30个字)