Javascript 优先于图形单击事件的映射onclick事件

Javascript 优先于图形单击事件的映射onclick事件,javascript,maps,esri,Javascript,Maps,Esri,我在显示信息窗口的地图上注册了一个点击事件。但是我也在map.graphics层上注册了一个点击事件,它将显示图形的信息窗口 问题是,当我单击图形时,它的信息窗口会在瞬间显示,然后被地图的信息窗口覆盖 单击图形时,如何避免触发地图的onclick事件 //map's onclick event map.on("click", function(event){ . . . map.infoWindow.show(event.mapPoint); }); // graphi

我在显示信息窗口的地图上注册了一个点击事件。但是我也在
map.graphics
层上注册了一个点击事件,它将显示图形的信息窗口

问题是,当我单击图形时,它的信息窗口会在瞬间显示,然后被地图的信息窗口覆盖

单击图形时,如何避免触发地图的onclick事件

//map's onclick event
map.on("click", function(event){
   .
   .
   .
   map.infoWindow.show(event.mapPoint);
});

// graphic's onclick event
dojo.connect(map.graphics, "onClick", function(e) {
    var html = e.graphic.infoTemplate;
    map.infoWindow.setTitle("Address");
    map.infoWindow.setContent(html);                                                        
    map.infoWindow.resize('300', '120');
    map.infoWindow.show(slcGraphic.geometry); // slcGraphic is a global variable
});

我想出来了。地图的单击处理程序有一个属性
event.graphic
,如果单击图形,该属性将不会为空。因此,我修改了我的地图的点击处理程序,如下所示,并删除了图形的点击处理程序

map.on("click", function(event){
   if(event.graphic)
   {
      // do what needs to happen on marker click
   }
   else
   {
      // do what needs to happen on map click
   }
});