2012-09-11 61 views
0

我使用OpenLayers显示地图并提供一些绘图功能。我还向要绘制的矢量图层添加了两个SelectFeatures。一个用于通过悬停来突出显示绘制的特征,另一个用于通过点击来选择特征。
我用this的例子来实现这个。OpenLayers突出显示悬停功能和点击选择

问题是,这个解决方案并没有真正的工作(即使在给定的例子中)。
如果我绘制一个新功能,我可以通过将光标放在它上面来突出显示它,但不能通过单击进行选择。 (同样在这个例子中,给定的功能工作正常,但在绘制一个新的功能后,select-by-click功能不再起作用)

除了官方的例子,还有其他的解决方案来实现吗?

+0

是的,这个例子应该像你一样工作。请在https://github.com/openlayers/openlayers/issues上打开一个问题 – tonio

回答

0

我能够得到像这样的工作。您需要激活特定的顺序控制:

highlightControl.activate(); 
selectControl.activate(); 
dragControl.activate(); 

悬停事件不被拖动和潘控制器进行处理,所以他们试图选择控制器,它不要么使用它们,将它们上传到高亮控制器。类似地,点击事件不由拖动控制器处理,而是由选择控制器处理。最后,拖动控制器处理拖动事件。最后被激活的是第一个被“咨询”的人。