Google maps 如何将CSS类添加到GoogleMaps标记?

Google maps 如何将CSS类添加到GoogleMaps标记?,google-maps,google-maps-api-3,google-maps-markers,Google Maps,Google Maps Api 3,Google Maps Markers,我想在GoogleMaps应用程序(Web)中设置一个标记的动画(fadein,fadeout) 如何将任何css类分配给标记 或者如何访问特定标记?他们有像:after之类的选择器吗 如果没有,那么对它们应用动画的最简单方法是什么?包含用于标记的图像的DOMNode无法通过API获得 此外,默认情况下,标记不是单个DOMNodes,而是通过画布绘制的 但是,当您为每个标记使用唯一的图标URL时,可以通过CSS访问标记图像 示例(使用jQuery): 现在,您可以通过属性选择器选择用于标记的-

我想在GoogleMaps应用程序(Web)中设置一个标记的动画(fadein,fadeout)

如何将任何css类分配给标记

或者如何访问特定标记?他们有像:after之类的选择器吗


如果没有,那么对它们应用动画的最简单方法是什么?

包含用于标记的图像的DOMNode无法通过API获得

此外,默认情况下,标记不是单个DOMNodes,而是通过画布绘制的

但是,当您为每个标记使用唯一的图标URL时,可以通过CSS访问标记图像


示例(使用jQuery):

现在,您可以通过属性选择器选择用于标记的
-元素,例如onmouseover/onmouseout

如果不想使用普通javascript,可以使用
document.querySelector
访问图像

注意:必须将标记的
优化
-选项设置为
false
(这将强制API将标记呈现为单个元素)

演示:

例如,如果您想更改标记的光标,有一个技巧可以使用 添加以下内容:

google.maps.event.addListener(YOURMARKER,'mouseover',function(){$(".gm-style   div").addClass("markerClass")});                        
google.maps.event.addListener(YOURMARKER,'mouseout',function(){$(".gm-style div").removeClass("markerClass")});                        


一个简单的方法是,选择标记并添加一个类,但为此,您必须为每个标记指定一个标题。除谷歌动画外,任何动画都不起作用

$(“div[title=\”“+name+“\”“]”)addClass(“aClass”)


我希望这对某人有所帮助。

将动画应用于标记的最简单方法是使用。不幸的是,它不包括淡入淡出的选项,它只允许你“跌落”或反弹。这很有帮助,非常感谢!是否有用于删除标记的API?我看到许多数据地图,当它们消失时,它们的标记会淡出。我已经设置了一个计时器几秒钟,在帽子之后,我想淡出标记,然后“marker.setMap(null)”不使用像../image.png这样的路径。当我想通过chrome中的javascript控制台获取标记时,我得到的是一个空数组。我将标记传递给函数“remove_marker(marker)”,在setTimeout之后,它将被移除。但是我不能访问没有“this”的标记。我使用了这种方法的一种变体,并没有使用唯一id动态更改每个url,而是为每个标记“type”使用了一个图标,为该类型的“active”标记使用了一个额外的图标。当单击一个标记时,我会动态地更改它的url,在文件名的末尾添加“Active”,然后首先重置以前在文件名中有“Active”的标记。(如果使用此方法,请确保使用标记的.setIcon方法更改文件路径,而不是.icon属性)从Google Maps v3开始,您将无法再访问以下自定义图像标记:(.尝试转到并输入
document.querySelectorAll('img[src*=beachflag]”)
在控制台中。@10BaseTom我为什么要尝试,我知道我的演示程序是有效的?再次阅读我的答案,你会发现不同之处。
var index=0;

//a few lines later:
icon:'http://www.google.com/mapfiles/marker.png?i='+(index++)
google.maps.event.addListener(YOURMARKER,'mouseover',function(){$(".gm-style   div").addClass("markerClass")});                        
google.maps.event.addListener(YOURMARKER,'mouseout',function(){$(".gm-style div").removeClass("markerClass")});                        
#YOUR-CANVAS .gm-style div {cursor: default !important;}
#YOUR-CANVAS .gm-style div.markerClass{cursor:pointer !important}