百度地图实现 右键map,marker出现菜单
来源:互联网 发布:win8网络连接受限 编辑:程序博客网 时间:2024/05/24 05:29
判断是右键map还是marker
//创建地图函数: function createMap(){ map.addEventListener("rightclick",function(e){ s = e.point.lng;//经度 w = e.point.lat;//维度 if(e.overlay){//判断右键单击的是否是marker }else{ RightClickMap(s,w);//右键单击map出现右键菜单事件 } }); window.map = map;//将map变量存储在全局 }
上面的代码,细心的人会发现我在对marker右键的时候没有调用方法,这是因为我的marker全部是从数据库取出来的,所以这里并没有调用 RightClickMaker(marker,point)方法。
右键map代码
//右键单击map出现右键菜单事件 function RightClickMap(s,w){ var EventMarker =function(map){ //addEventF是具体的菜单方法,要实现什么功能取决自身需求 addEventF(s,w); }; var markerMenu=new BMap.ContextMenu(); markerMenu.addItem(new BMap.MenuItem('生成事件',EventMarker.bind(map))); map.addContextMenu(markerMenu);//给标记添加右键菜单 }
右键marker代码
直接右键一个marker生成菜单没有意义,所以我这里是从数据库取出数据,生成marker,并给对应的marker带上右键菜单功能
//ajax显示Maker(EVENT) $.ajax({ url:'preplan_event_queryAll.action', type:'POST', data:{ }, success:function(res){ var data=eval('('+res+')'); for (var i = 0; i < data.length; i++) { var point = new BMap.Point(data[i].longitude, data[i].latitude); var marker = new BMap.Marker(point, { icon:eventIcon, enableMassClear:false //防止被大规模清除 }); points.push(point); map.addOverlay(marker); RightClickMaker(marker,point);//右键单击marker出现右键菜单事件
//右键单击Maker出现右键菜单事件 function RightClickMaker(marker,point){ var watchMarker = function(e,ee,marker){//右键查看附近 //要实现的方法 } var markerMenu=new BMap.ContextMenu(); markerMenu.addItem(new BMap.MenuItem('查看附近资源',watchMarker.bind(marker))); marker.addContextMenu(markerMenu);//给标记添加右键菜单 }
效果图:
右键map
右键marker
BTW,我这里写的右键菜单,function是没有识别顺序的,如果每个marker调用上的function不一样(比如里面有i),那么用这种方法会出现不管右键哪个marker,结果都是ajax遍历结果的最后一个.
我在另一个里面写了解决方案,如果没有需求就不用了。
http://blog.csdn.net/b809220024/article/details/73469945
阅读全文
0 0
- 百度地图实现 右键map,marker出现菜单
- 百度地图,marker添加右键菜单
- 『实践』百度地图给map添加右键菜单(判断是否为marker)
- 百度地图给多个marker添加右键菜单(删除、更新)
- 『实践』百度地图给多个marker添加右键菜单(删除、更新)
- 百度地图添加marker,并增加左键点击,右键菜单,文本窗等功能
- 百度地图添加右键菜单
- 实现百度地图marker类平滑移动
- 百度地图+Marker纠偏
- 百度地图,自定义Marker
- 百度地图marker
- 百度离线地图添加右键菜单
- Arcgis for javascript实现百度地图ABCD marker的效果
- Arcgis for javascript实现百度地图ABCD marker的效果
- OL2中实现百度地图ABCD marker的效果
- 百度地图Marker隐藏/显示
- 百度地图-marker 标 内容
- 百度地图添加marker并获取InfoWindow里面的内容,实现marker的增加、删除、编辑
- Ajax
- 查看maven引入的某个jar的依赖项
- 如何创建一个Analytics Framework的服务
- TextView+ToggleButton
- AngularJS Scope与rootScope理解与区别
- 百度地图实现 右键map,marker出现菜单
- GitHub上传文件大小设置
- 代码代码
- jQuery在某个标签的html代码后面,添加一些html代码?
- 量化交易之羊驼算法在python中的实现
- optee中的fiq的执行
- java中的接口和抽象类
- 端口/URG&PSH/TCP定时器/TCP的三次握手及四次挥手
- 微信小程序的详细登录(上)