代码之家  ›  专栏  ›  技术社区  ›  AlexB borjafp

Google Maps API v3 DrawingManager:更改标题属性

  •  0
  • AlexB borjafp  · 技术社区  · 11 年前

    我正在使用 Google Maps API V3 以及 DrawingManager .

    当鼠标悬停在我的 绘图经理 这个 title 图标的属性出现了,但我想更改这个标题(法语版本中的“Dessiner une forme”)并放上我自己的。

    enter image description here

    我尝试使用:

    $("div.gmnoprint img[src$='drawing.png']").last().attr("title", "My custom title");
    

    还有这个 作品 ,但:

    • 这个解决方案看起来很难看。
    • 它在我的浏览器控制台中工作,但我需要一个事件 drawingmanager_complete 仅当管理员 满载,满载 ,但根据 the documentation ,它不存在。。。

    有没有干净可靠的方法来实现这一点?
    非常感谢。

    1 回复  |  直到 11 年前
        1
  •  1
  •   AniV    11 年前

    不幸的是,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;  
             } 
    
          });
        });
      });
    

    这将与英语作为一种语言一起使用。要实现这一点,无论使用何种语言,您都必须检查按钮图像的顶部属性(这似乎是唯一可以用来确定按钮形状类型的细节)。

    推荐文章