如何更改谷歌地图“图形管理器”工具栏工具提示
How to change google maps Drawing Manager toolbar tooltip?
我遇到了谷歌地图绘制管理器的问题。我想更改图形管理器工具栏的默认工具提示。当我们在绘图管理器工具栏上移动鼠标时(在标记、圆圈上移动鼠标),我们会看到工具提示"添加标记"、"绘制圆圈"。我想将工具栏工具提示更改为"添加新位置"、"绘制区域"。我使用谷歌地图API版本3。有可能改变它吗?
提前感谢
按钮的节点不能通过API访问,最好的方法是提交内置控件并创建自己的控件。
另一种方法(使用jQuery,但也可以不使用框架):
$(map.getDiv()).one('mouseover','img[src="https://maps.gstatic.com/mapfiles/drawing.png"]',function(e){
$(e.delegateTarget).find('img[src="https://maps.gstatic.com/mapfiles/drawing.png"]').each(function(){
$(this).closest('div[title]').attr('title',function(){
switch(this.title){
case 'Add a marker':
return 'Add New Location';
break;
case 'Draw a circle':
return 'Draw an area';
break;
default:return this.title;
}
});
});
});
它观察按钮的mouseover事件(因为您永远不会知道文档中的按钮何时可用),然后修改标题。
但只有当API使用英语作为语言时,这种方法才会起作用。为了实现这一点,无论使用何种语言,您都必须检查按钮图像的顶部属性(这似乎是唯一可用于确定按钮所用形状类型的细节)
无论出于什么原因,我都无法让@Dr.Molle版本正常工作。然而,通过调整这个答案,我能够让它在我的应用程序中发挥作用。
例如,我只是想更改"DrawingManager"drawRectangle方法的文本,下面的代码对我有效。对DrawingManager工具提示进行此修改的关键是确保在运行此代码之前,文档和地图对象已完全加载。
$(".gmnoprint").each(function(){
var newObj = $(this).find("[title='Draw a rectangle']");
newObj.attr('title', 'Draw a rectangle around the area to search');
});
相关文章:
- JQuery文本编辑器-在工具栏中添加其他下拉列表
- 如何使用具有不同工具栏的多个Aloha编辑器
- 如何获取用户访问令牌,与图形 API 资源管理器中使用的令牌相同
- 动态跟踪代码管理器 - Adobe 分析工具条件
- 从自定义按钮而不是工具栏打印报表查看器
- 任何 html 元素的 Javascript 样式编辑器工具栏
- 仅当具有 1 个工具栏的多个编辑器的编辑器处于焦点中时,才显示 TextAngular 工具栏
- 在绘图管理器中显示/隐藏所有图形绘图
- 单击CK编辑器工具栏上的获取UI按钮
- 隐藏和显示剑道ui编辑器工具栏
- 如何更改谷歌地图“图形管理器”工具栏工具提示
- CKEDITOR没有工具栏闪烁图标的内联编辑器
- 如何更新web探查器工具栏以显示有关ajax请求的数据
- CK编辑器文本对齐工具栏按钮
- 在多个编辑器中共享Quill工具栏
- 具有自定义工具栏的多个Ckeditor内联编辑器
- 在SAPUI5 (Javascript)项目中集成Quill富文本编辑器工具栏
- 将自定义确认消息添加到标准joomla 3.0管理工具栏按钮
- 删除绑定和CK编辑器工具栏不显示
- 如何在默认情况下显示剑道内联编辑器工具栏