在我的页面中删除谷歌地图的tabindex

时间:2015-05-29 13:36:50

标签: javascript google-maps-api-3

我需要删除我页面上地图的tabindex。 我使用了下面的代码,但标签会通过地图上的标记和Google徽标。

var map = new google.maps.Map(document.getElementById('map'),
            mapOptions);

    //Remove o TAB do mapa
      google.maps.event.addListener(map, 'tilesloaded', function() {
          var mapContent = (document.getElementById("map"));
          mapContent('a').attr('tabindex',-1);          
      });

3 个答案:

答案 0 :(得分:5)

建立瓦西里的答案

google.maps.event.addListener(MAP, "tilesloaded", function(){
    [].slice.apply(document.querySelectorAll('#map a')).forEach(function(item) {
        item.setAttribute('tabindex','-1');
    });
})

Here is it in action.

答案 1 :(得分:0)

[].slice.apply(document.querySelectorAll('#map a')).forEach(function(item) { 
   item.removeAttribute('tabindex'); 
});

有些喜欢

答案 2 :(得分:0)

我把它与jQuery一起使用

首先,在加载坐标数据后,我向地图的“ idle”事件添加了事件监听器

this.map.addListener('idle', $.proxy(this._removeTabindex, this));

然后在_removeTabindex函数中,我向所有元素添加了tabindex =“-1”和aria-hidden =“ true”

_removeTabindex: function () {
    $('.gm-map').find('*').each(function() {
        $(this).attr('tabindex','-1');
        $(this).attr('aria-hidden','true');
    })
}