Google Maps API v3 DrawingManager:更改标题属性
Google Maps API v3 DrawingManager : Change title attributes
我正在使用 Google Maps API V3
和 DrawingManager
。
当鼠标悬停在我的 DrawingManager
上时,图标的 title
属性出现,但我想更改此标题("Dessiner une forme" 这里是法文版)并放入我自己的。
我尝试使用:
$("div.gmnoprint img[src$='drawing.png']").last().attr("title", "My custom title");
这 有效 ,但是 :
- 这个解决方案看起来很难看。
- 它在我的浏览器的控制台中工作,但我需要一个事件
drawingmanager_complete
到 运行 此代码只有当管理器 完全加载 时,但是根据到 the documentation ,它不存在...
有没有干净可靠的方法来完成这个?
谢谢
不幸的是,API 或库不提供任何可由开发人员编辑以创建自己的自定义端点的端点。做到这一点的最好方法是省略预先存在的控件,然后构建您自己的控件。
一种方法是使用这种方法:
$(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;
}
});
});
});
这将适用于英语作为一种语言。无论使用哪种语言,要实现它,您都必须检查按钮图像的顶部 属性(这似乎是唯一可用于确定按钮所用形状类型的细节) .
我正在使用 Google Maps API V3
和 DrawingManager
。
当鼠标悬停在我的 DrawingManager
上时,图标的 title
属性出现,但我想更改此标题("Dessiner une forme" 这里是法文版)并放入我自己的。
我尝试使用:
$("div.gmnoprint img[src$='drawing.png']").last().attr("title", "My custom title");
这 有效 ,但是 :
- 这个解决方案看起来很难看。
- 它在我的浏览器的控制台中工作,但我需要一个事件
drawingmanager_complete
到 运行 此代码只有当管理器 完全加载 时,但是根据到 the documentation ,它不存在...
有没有干净可靠的方法来完成这个?
谢谢
不幸的是,API 或库不提供任何可由开发人员编辑以创建自己的自定义端点的端点。做到这一点的最好方法是省略预先存在的控件,然后构建您自己的控件。
一种方法是使用这种方法:
$(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;
}
});
});
});
这将适用于英语作为一种语言。无论使用哪种语言,要实现它,您都必须检查按钮图像的顶部 属性(这似乎是唯一可用于确定按钮所用形状类型的细节) .