设置双击事件,而不禁用默认的鼠标松开/鼠标按下行为
-
21-09-2019 - |
题
我试图启用柔性控制双击事件没有禁用默认的鼠标松开/鼠标按下的行为。
我使用对于ArcGIS服务器的ESRI Flex的API,并且我有一个背景层和一个GraphicLayer地图控制。图形层有响应鼠标悬停,并允许用户平移地图,如果他们点击并按住几个图形对象。然而,当我实现针对图形对象双击事件处理程序,他们似乎不再冒泡它们的默认行为到地图中。
是否有实现的图形对象上的双击而从点击并按住保留旧的行为方式?
解决方案
我通过双击事件附加到地图上,而不是图形,并使用该事件的target属性来获得我想要使用的图形解决了这个。
像这样:
map.addEventListener(MouseEvent.DOUBLE_CLICK, function(event:MouseEvent):void
{
var graphic:Graphic = event.target as Graphic;
if(graphic)
{
...
}
});
其他提示
如果你设置了“checkForMouseListeners”属性设置为false在你的图形对象,那么默认的地图,请点击/拖曳行为将被保留。
graphic.addEventListener(MouseEvent.DOUBLE_CLICK, function(event:MouseEvent):void {
var graphic:Graphic = event.target as Graphic;
if(graphic) {
...
}
});
//preserve the default click/drag behavior on the map
graphic.checkForMouseListeners = false;
不隶属于 StackOverflow