【问题标题】:OpenLayers: mixing fixed and draggable featuresOpenLayers:混合固定和可拖动功能
【发布时间】:2011-08-12 12:49:51
【问题描述】:

我正在尝试创建具有两个基本功能的 OpenLayers UI:

  • 地图上有固定的要素,当用户将鼠标悬停在固定要素上时,会在页面上获得额外的信息(不是地图上的弹出窗口);

  • 有一个可拖动的参考点,用户可以在地图上移动。

我目前已经让这些中的每一个都独立工作。我有两个矢量图层,一个用于固定特征,一个用于可拖动特征。第一层有一个OL.Control.SelectFeature 控件和{hover:true},第二层有一个OL.Control.DragFeature 控件。但是,当我启用DragFeature 控件时,当我将鼠标悬停在固定功能上时,SelectFeature 控件不再获得任何事件。相反,如果我提高固定要素图层的 z-index(如建议的 here),则无法拖动可拖动要素。这表明只有最顶层可用于用户交互。

我认为我在这里犯了一个相当基本的错误。如何允许用户与两层的功能进行交互?或者,有没有更好的方法来设计我上面提到的用户体验?

我可以看到的另一种选择是我将两种类型的特征放在一个层上,并以某种方式阻止固定特征响应拖动交互。但是,通过 OpenLayers API,我看不到任何明显的方法可以让 DragFeature 控件在用户启动后放弃拖动交互。

【问题讨论】:

    标签: openlayers


    【解决方案1】:

    好的,找到了解决方案:SelectFeature 控件需要附加到两个图层,然后悬停事件处理程序检查该功能是否可选。可拖动功能保留在单独的图层上,因此它是唯一的可拖动对象。 This posting 有助于找出答案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-12
      • 2015-10-12
      • 2018-07-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多