功能核心:  地理坐标转屏幕坐标

用到的插件:jquery  animo动画插件

核心代码:

 var point = new Point(lon, lat, map.spatialReference);
var screenPnt = map.toScreen(point);

功能代码:

<span style="font-size:14px;">for (var i = 0; i < json.length; i++) {</span>
<span style="font-size:14px;"><span style="white-space:pre">		</span>
var title = json[i].title;
var lon = json[i].lon;
var lat = json[i].lat;
var value = json[i].value;
var code = json[i].code;</span>
<span style="font-size:14px;"><span style="white-space:pre">		</span>//自己定义标签
var html = "";
html += "<div id='ring" + i + "' class='ring'>";
html += "<div id = 'div_mapIcoDiv" + i + "' title='" + title + "' lon='" + lon + "' lat='" + lat + "' value='" + value + "' code='" + code + "'>";</span><pre name="code" class="javascript"><span style="font-size:14px;"><span style="white-space:pre"> </span> lve = coustomTool.getLveAndColor(value);</span><pre name="code" class="javascript">html += "<div class = 'tip_name' style='border:1px solid " + lve.borderColor + "'>" + title + "</div>"; html += "<div class = 'tip_value' style='background: url(IMG/BG/" + lve.imgColor + ") no-repeat'>" + value + "</div>"; html += "</div>"; html += "</div>";


<span style="font-size:14px;"><span style="white-space:pre">		</span>//地理坐标转屏幕坐标并设置点位div的位置
var point = new Point(lon, lat, map.spatialReference);
var screenPnt = map.toScreen(point);</span>
<span style="font-size:14px;">                $("#ring" + i).css({ "left": screenPnt.x - 19 + "px", "top": screenPnt.y + 25 + "px", "position": "absolute", "z-index": "10", "cursor": "pointer" });</span>
<span style="font-size:14px;"><span style="white-space:pre">		</span>$("body").append(html);

            }</span>
<span style="font-size:14px;"><span style="white-space:pre">	</span>//点位动画效果</span>
<span style="font-size:14px;"><span style="white-space:pre">	</span>$(".class_mapIcoDiv").animo({ animation: ["rollIn"], duration: 0.5 });      </span><pre name="code" class="javascript"><span style="font-size:14px;"><span style="white-space:pre">	</span>$(".class_mapIcoDiv").bind("mouseover", function () {
                    $(this).animo({ animation: ["pulse"], duration: 0.5 });
                });</span>

<span style="font-size:14px;"></span><pre name="code" class="javascript">

<span style="font-size:14px;">
</span>

 var panStart = dojo.connect(map, "onPanStart", function () {
                $(".ring").css("display", "none");
                $(".esriPopup").css("display", "none");
            });
            var panEnd = dojo.connect(map, "onPanEnd", function () {
                for (var i = 0; i < json.length; i++) {
                    var x = json[i].lon;
                    var y = json[i].lat;
                    var point = new Point(x, y, map.spatialReference);
                    screenPnt = map.toScreen(point);
                    $("#ring" + i).css({ "left": screenPnt.x - 19 + "px", "top": screenPnt.y + 25 + "px", "position": "absolute", "display": "block", "z-index": "1" });
                }
                $(".esriPopup").css("display", "block");
            });
            var zoomStart = dojo.connect(map, "onZoomStart", function () {
                $(".ring").css("display", "none");
                $(".esriPopup").css("display", "none");
            });
            var zoomEnd = dojo.connect(map, "onZoomEnd", function () {
                for (var i = 0; i < json.length; i++) {
                    var x = json[i].lon;
                    var y = json[i].lat;
                    var point = new Point(x, y, map.spatialReference);
                    screenPnt = map.toScreen(point);
                    $("#ring" + i).css({ "left": screenPnt.x - 19 + "px", "top": screenPnt.y + 25 + "px", "position": "absolute", "display": "block", "z-index": "1" });
                }
                $(".esriPopup").css("display", "block");
            });
            //将地图事件的句柄加入到句柄集合中。
            config._eventHandlers.push(panStart);
            config._eventHandlers.push(panEnd);
            config._eventHandlers.push(zoomStart);
            config._eventHandlers.push(zoomEnd);

地图上显示div点位的更多相关文章

  1. OpenLayers在地图上显示统计图,饼图线状图柱状图,修复统计图跳动的问题

    环境介绍 Openlayers ol.js v5.3.0 Highcharts highcharts.js v7.0.1 jquery jquery-3.3.1.js v3.3.1 显示效果 地图放大 ...

  2. html5定位并在百度地图上显示

    在开发移动端 web 或者webapp时,使用百度地图 API 的过程中,经常需要通过手机定位获取当前位置并在地图上居中显示出来,这就需要用到html5的地理定位功能. navigator.geolo ...

  3. html5定位获取当前位置并在百度地图上显示

    用html5的地理定位功能通过手机定位获取当前位置并在地图上居中显示出来,下面是百度地图API的使用过程,有需要的朋友可以参考下 在开发移动端 web 或者webapp时,使用百度地图 API 的过程 ...

  4. [Xcode 实际操作]四、常用控件-(17)为MKMapView地图上显示提示框

    目录:[Swift]Xcode实际操作 本文将演示当点击地图上的标注圆点时,弹出信息窗口. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit ...

  5. Echarts 地图上显示数值

    Echarts 地图上展示数值,效果如下: 上代码:关键代码用红色 series: [ { //name: '香港18区人口密度', type: 'map', mapType: 'jiangsu', ...

  6. hightmaps 按地图上显示的统计数据

    离extjs 至 easyui 到html5到hightchars 再到hightmaps.Exjts和easyui很相似,extjs是重量级的,easyui轻量级的.比extjs容易上手.照着dem ...

  7. 根据百度地图API得到坐标和地址并在地图上显示

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout ...

  8. 地图上显示X,Y 坐标代码

    事件数据 所有的鼠标事件都使用MouseButtonEventArgs和MouseEventArgs作为事件数据,通过这两个参数可以获取相关事件数据,使用GetPosition方法或者Source.H ...

  9. 【小技巧】object上显示div

    这个现在不大常用了,就是object在页面中显示的优先级最高,其他层想覆盖在其上面,设置的z-index再高都不管用,解决办法是在层中加一个iframe.不多说了,直接记录下代码吧,估计以后用到的机率 ...

随机推荐

  1. 常见的C字符串处理函数的源代码

    #include <stdio.h> #include <assert.h> char *strcpy(char *strDest,const char *strSrc) // ...

  2. 学习中 常用到的string内置对象方法的总结

    //concat() – 将两个或多个字符的文本组合起来,返回一个新的字符串. var str = "Hello"; var out = str.concat(" Wor ...

  3. Coderfroces 862 B . Mahmoud and Ehab and the bipartiteness

     Mahmoud and Ehab and the bipartiteness Mahmoud and Ehab continue their adventures! As everybody in ...

  4. CentOS7/RedHat7的Apache配置介绍

    这里我们介绍yum安装httpd yum install -y httpd ************* [root@100 ~]# systemctl restart httpd [root@100 ...

  5. 这是一套Java菜鸟到大牛的学习路线之高级教程,由工作了10年的资深Java架构师整理。

    这是一套Java菜鸟到大牛的学习路线之高级教程,由工作了10年的资深Java架构师整理.        01-java高级架构师设计-基础深入        J2SE深入讲解        Java多 ...

  6. 整合struts2+spring+hibernate

     一.准备struts2+spring+hibernate所须要的jar包:        新建web项目并将jar包引入到project项目中. 二.搭建struts2环境        a.在 ...

  7. Image-Loader LruMemoryCache

    这段时间在研究Universal-Image-Loader 这个图片处理开源框架,这里主要分析一下它的LRU(Least Resently Used,最近最少使用算法)内存缓存的实现. 在UIL它提供 ...

  8. 变量get、set设置

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  9. Android studio文件名颜色分别表示含义

    这其实是主要和版本控制工具有关,含义如下: 绿色,已经加入控制暂未提交红色,未加入版本控制蓝色,加入,已提交,有改动白色,加入,已提交,无改动 灰色:版本控制已忽略文件

  10. Fragment-生命周期

    Fragment生命周期图 一.Fragment的几种状态: 与Activity类似,Fragment也有一下几种状态: · 活动状态:当前Fragment位于前台,可见,可获得焦点. · 暂停状态: ...