Javascript 在指定时间后更改谷歌地图图标图像

Javascript 在指定时间后更改谷歌地图图标图像,javascript,google-maps,extjs,extjs4.2,Javascript,Google Maps,Extjs,Extjs4.2,我将extjsv4.2与GMapPanel.js()和googlemapsv3api一起使用 我的记号笔放得很好。我想做的是在给定的时间(比如10秒)后,更改特定标记的标记图标图像 下面是初始化标记的文件(),但是我相信更改是在GMapPanel.js中进行的 我在最初加载地图时使用清除标记,然后我希望看到它在给定时间(10秒)后变为绿色标记 GMapPanel.js的一行#53是标记最初加载的地方 在第54行,我试图更改标记(没有任何计时器,只是简单地尝试更改标记) 如果有人能告诉我如何更改图

我将extjsv4.2与GMapPanel.js()和googlemapsv3api一起使用

我的记号笔放得很好。我想做的是在给定的时间(比如10秒)后,更改特定标记的标记图标图像

下面是初始化标记的文件(),但是我相信更改是在GMapPanel.js中进行的

我在最初加载地图时使用清除标记,然后我希望看到它在给定时间(10秒)后变为绿色标记

GMapPanel.js的一行#53是标记最初加载的地方

在第54行,我试图更改标记(没有任何计时器,只是简单地尝试更改标记)

如果有人能告诉我如何更改图标,我将非常感激。我希望这个问题足够清楚,如果您需要更多信息,请告诉我


干杯。

GMapPanel
有一个
mapredy
事件,注册它并获取gmapv3api的映射对象,然后你就可以实现基于gmapv3googleapi的函数等

mapready : function(map, eOpts) {
                    var mapObj = map.gmap;
                    var marker = new google.maps.Marker({
                    map : mapObj,
                    draggable : true,
                    animation : google.maps.Animation.DROP,
                    position : new google.maps.LatLng(38.410558, -98.525391)
                    });
                 setTimeout(function(){marker.setIcon('newImage.png');}, 2000);

                }

以上代码未经测试。仅给出一个想法。

使用setTimeout()在指定的时间后设置事件(要执行的代码)。setTimeout(“yourJSfunction()”,time_in_ms)感谢您对计时器的回答。这其实不是我要问的关键问题。我想知道的是标记图标的变化。还有,到底为什么有傻瓜把我的问题记下来了。我认为这是一个非常清楚的问题,有很多例子。非常感谢。这看起来是一个很好的开始。我看到初始化后正在启动map ready。谢谢你的示例代码。现在开始有意义了。我认为您不能在另一个标记上放置标记(精确的lat/lng)。这是我替换之前的地图的方式,还是我必须先清除地图?与使用ExtJS进行所有地图操作不同,我总是喜欢从ExtJS初始化地图,然后从map object执行所有操作,包括事件侦听、标记、多边形等。通过这种方式,您将从谷歌地图社区获得更多帮助,并在网上获得许多示例。在你的帮助下,我实现了我的目标。我没能像你建议的那样把地图准备好。当我使用console.log(mapready)时,我得到了true,但它仍然不允许我使用mapready:函数。然而,我让它以不同的方式工作,它是完美的!