zoukankan      html  css  js  c++  java
  • 标记当前位置 及 在地图上显示足迹

    标记当前位置

    示例代码:

    var marker = new BMap.Marker(point);
    map.addOverlay(marker);

    在地图上显示足迹

    显示足迹列表要用到百度地图API中“添加折线”的方法。

    API文档给出的参考代码是:

    var polyline = new BMap.Polyline([   
       new BMap.Point(116.399, 39.910),   
       new BMap.Point(116.405, 39.920)   
     ],   
     {strokeColor:"blue", strokeWeight:6, strokeOpacity:0.5}   
    );   
    map.addOverlay(polyline);   

    可以看到polyLine是显示折现的关键 。

    那么在jsp中如何编写这个polyLine呢?

    可以使用EL表达式来进行。

    看一段很奇怪的且编译器会报错的代码:

    <script type="text/javascript">
    
    var map = new BMap.Map("position");
    var point = new BMap.Point(${currentLocation.longitude}, ${currentLocation.latitude});
    map.centerAndZoom(point, 18);
    var polyline = new BMap.Polyline([
    <c:forEach items="${list}" var="bean">
    new BMap.Point(${bean.longitude}, ${bean.latitude}),</c:forEach>
    ],
    {strokeColor:"blue", strokeWeight:6, strokeOpacity:0.5}
    );
    map.addOverlay(polyline);
    
    </script>

    可以看到,EL表达式其实是嵌入到了js代码之中的。这样的做法会导致编译器报错。不过这段代码却是合法的。

    因为EL表达式将会在js能运行前组织完成。

    引用一句别人的话,就是

    EL表达式是在服务端执行的,服务端执行完成后再传给客户端的,js是在客户端执行的,el在js前就被执行了

    下图展示了显示路径的效果。

  • 相关阅读:
    C#多线程编程实战(一):线程基础
    查找算法之顺序查找
    设计模式01 创建型模式
    查找算法之二分查找
    设计模式01 创建型模式
    每天学一个,设计模式概要
    设计模式 01
    汽车电子传感器科普:激光雷达 毫米波雷达 超声波雷达
    C 如何判断编译器是否支持C90 C99?
    Node.js之EventEmiter
  • 原文地址:https://www.cnblogs.com/elaron/p/2729190.html
Copyright © 2011-2022 走看看