最近在用jvectormap 开发地图功能的时候,有个需求是做一个城市热点地图,这个功能可以用jvectormap 的Markers 去做,但是要实现城市之间画线做城市迁移之类的展示图 就很难了,于是就查看了jvectormap 的源代码,增加了一个line的功能。
1565 this.createMarkers(this.params.markers || {});指定画圈功能
2134 createMarkers->addCircle 触发相应工恩能够
2157 getMarkerPosition maker 经纬度转换成 position
2280 latLngToPoint 获得经纬度跟句这个过程就可以自定义一些函数去实现其他功能关于事件监听listener
---> 1555 绑定事件
mousewheel
---> 1725 map.setScale(map.scale * zoomStep, centerX, centerY);
---> 1938 this.applyTransform();
---> 1682 this.repositionMarkers(); repositionLines
---> 2183 repositionMarkers这里需要在滚轮事件中对线进行重新描绘mouseover 鼠标移上去效果
---> 1557 this.bindElementEvents();
---> 1840 mouseover事件
---> 1843 element.setHovered(true);
----> 382 this.updateStyle();
----> 431 jvm.AbstractShapeElement.mergeStyles(attrs, this.style.hover); 在配置参数中用 "style":{"hover":{"stroke":"#A52A2A"} }去指定