首页 / 浏览问题 / 其他 / 问题详情
marker点击事件弹出框为该点的放大地图
zlj
19EXP 2017年06月22日
请教大神,想实现地图上添加marker,当点击改点是弹出框显示的内容为以该点为中心的放大到一定比例的地图,要怎么做呢?openInfoWin中能放地图吗?

1个回答

可以放地图,两种实现方式
1. 需要能拖拽、缩放地图等,new一个map对象(SuperMap.Map没有提供克隆对象的方法),添加地图缩放到某个地方,当然,如果叠加了多个图层,需要都添加上,可以不添加Navigation控件,使之不能通过鼠标平移缩放。

2. 只显示静态图片,发http请求( image)对应的图片即可,叠了多个图层的不好处理,特别是还有Vector、Marker等图层的,不建议

1,780EXP 2017年06月22日
我需要将新new的map对象显示在弹出框中,怎么把这个map放到openInfoWin中呢?是把map放到<div>中吗?那怎么把<div>放到函数中?

/而且需要把marker的点的信息需要的参数传给openInfoWin()函数中去,才能显示以该点经纬度为中心点的地图,"click":openInfoWin,怎么传参。谢谢谢谢

弹窗内容传的是html字符串,所以可以放个div指定id,示例:常用信息框

new SuperMap时需要指定显示地图的div的id
传参是JavaScript的基础了,用个匿名方法传就行,若是循环里用闭包。请自己解决。

谢谢回答 弹窗内容设置 contentHTML += "<div id= 'map2'></div>"; 这样对吗?为什么弹出框中不显示地图呢,我试了好几种方法都不好使,但我的map2放到别的div中是显示的~
注意代码执行顺序,dom要先存在,new SuperMap.Map才能关联上该div,所以,需要弹窗添加上后再去new SuperMap.Map
好的我研究下,谢谢,老师您那有类似的范例吗?

还得麻烦问一下,我点击图标后再执行加载new SuperMap.Map 的函数,为什么弹窗里加载不上地图,只出现地图右侧的那个显示图层的正方形方块呢,然后还没有图层的名称。谢谢

...