我找到了库:geometrycontrols写入到api v2并允许添加按钮。如何使一个切换按钮在api v3中添加标记?我已经开始地图等如何在google map api v3上添加切换按钮?
1
A
回答
8
您可以添加任意的结构化<div>
到地图:
var control = document.createElement('div');
您一个侦听器添加到该控件或其子女,如:
google.maps.event.addDomListener(control, 'click', function() {...});
你将控件放置在地图上:
control.index = 1;
map.controls[google.maps.ControlPosition.TOP_RIGHT].push(control);
有关详细信息,请参阅:
1
我不认为你需要任何监听器添加到地图都没有。只需将它添加到您的自定义控件中的HTML元素。
你一定要通过自定义控制您的自定义图标和按钮和版权添加到谷歌地图。否则,他们可能无法在移动设备上正确渲染。
我发现官方Google Maps JavaScript API Custom Control example是相当复杂的,我永远记得的位置选项。所以,我创建了一个tiny 1.72 KB add-on JS on GitHub库调用CONTROL-JS,使您可以简单地创建自定义的内容作为一个字符串,如var html = "<h1>Hi</h1>"
然后将它传递给一个对象调用control
,每一个位置的方法(IDE的智能提醒你可能位置)。
所以,你的情况,unsing CONTROL-JS只是做
var html = '<p id="control-text"> Zoom </p>'
//Global method that is fired when the API is loaded and ready
function initMap() {
map = new google.maps.Map(document.getElementById("map"), mapOptions);
//intelleSense/Auto-complete works on IDE's
control.topCenter.add(html);
};
/*
control.js v0.1 - Add custom controls to Google Maps with ease
Created by Ron Royston, www.rack.pub
https://github.com/rhroyston/control
License: MIT
control.topCenter.add.(html)
*/
var control=function(){function o(o){this.add=function(T){var t=document.createElement("div");if(t.innerHTML=T,o)switch(o){case"TOP_CENTER":map.controls[google.maps.ControlPosition.TOP_CENTER].push(t);break;case"TOP_LEFT":map.controls[google.maps.ControlPosition.TOP_LEFT].push(t);break;case"TOP_RIGHT":map.controls[google.maps.ControlPosition.TOP_RIGHT].push(t);break;case"LEFT_TOP":map.controls[google.maps.ControlPosition.LEFT_TOP].push(t);break;case"RIGHT_TOP":map.controls[google.maps.ControlPosition.RIGHT_TOP].push(t);break;case"LEFT_CENTER":map.controls[google.maps.ControlPosition.LEFT_CENTER].push(t);break;case"RIGHT_CENTER":map.controls[google.maps.ControlPosition.RIGHT_CENTER].push(t);break;case"LEFT_BOTTOM":map.controls[google.maps.ControlPosition.LEFT_BOTTOM].push(t);break;case"RIGHT_BOTTOM":map.controls[google.maps.ControlPosition.RIGHT_BOTTOM].push(t);break;case"BOTTOM_CENTER":map.controls[google.maps.ControlPosition.BOTTOM_CENTER].push(t);break;case"BOTTOM_LEFT":map.controls[google.maps.ControlPosition.BOTTOM_LEFT].push(t);break;case"BOTTOM_RIGHT":map.controls[google.maps.ControlPosition.BOTTOM_RIGHT].push(t)}else console.log("err")}}var T={};return T.topCenter=new o("TOP_CENTER"),T.topLeft=new o("TOP_LEFT"),T.topRight=new o("TOP_RIGHT"),T.leftTop=new o("LEFT_TOP"),T.rightTop=new o("RIGHT_TOP"),T.leftCenter=new o("LEFT_CENTER"),T.rightCenter=new o("RIGHT_CENTER"),T.leftBottom=new o("LEFT_BOTTOM"),T.rightBottom=new o("RIGHT_BOTTOM"),T.bottomCenter=new o("BOTTOM_CENTER"),T.bottomLeft=new o("BOTTOM_LEFT"),T.bottomRight=new o("BOTTOM_RIGHT"),T}();
相关问题
- 1. Google Map API v3上的标记偏移
- 2. Google maps api v3 + marker clusterer:centering map?
- 3. 如何异步添加Google maps v3 API上的标记?
- 4. Google Calendar v3 api添加ExtendedProperties
- 5. Google Maps V3 API和MarkerManager - 如何切换选定的标记?
- 6. 在Google Maps API v3中切换图像叠加层
- 7. 如何在Google Maps API v3中将标记添加到标记
- 8. Google Maps API v3自定义按钮
- 9. 按钮事件InfoWindow Google Map APi
- 10. Google Map API V3:如何将自定义数据添加到标记
- 11. 如何在片段布局上添加按钮?(Google maps Android studio)
- 12. 如何在CakePHP中使用google map v3
- 13. 如何在Google Maps v3上添加和删除多边形?
- 14. 延伸方向服务google map api v3
- 15. Google Map API V3多边形DragEnd事件
- 16. 在自定义标记中添加一个值Google Map V3
- 17. 如何在禁用时为多个切换按钮添加类
- 18. Google Map API V3 - 在LG7 Android 4.0上显示两个标记
- 19. 在Google Map API V3中隐藏infowindow上的阴影
- 20. 如何在多个按钮上单独切换每个按钮?
- 21. 如何使用iPhone webView在Google Map Api中添加Mapcluster?
- 22. Google Maps API v3 - 添加地标控件
- 23. 如何在android中添加文本和切换按钮上方的listView?
- 24. GWT Google Map Api V3 - 更换时发生故障
- 25. 如何在Google Maps API上定位自定义按钮控件?
- 26. 如何切换按钮?
- 27. 在Google Maps v3中切换KML图层
- 28. 如何让Google Map V3保留圆角?
- 29. 如何将按钮添加到GoogleMap上
- 30. 如何将文本“ON”和“OFF”添加到切换按钮
当我使用这个组合与切换jQuery的元素,自定义控件在jQuery/jqlite元素再次显示后消失。如果我放大,只会再次出现。到目前为止没有工作。 – kaiser