Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript React-OpenLayers:onClick事件未在覆盖上激发,而onMouseUp是_Javascript_Reactjs_Openlayers - Fatal编程技术网

Javascript React-OpenLayers:onClick事件未在覆盖上激发,而onMouseUp是

Javascript React-OpenLayers:onClick事件未在覆盖上激发,而onMouseUp是,javascript,reactjs,openlayers,Javascript,Reactjs,Openlayers,我使用的是OpenLayers 5.3.3和React 16.8.6 我在试图处理地图上显示的覆盖图上的单击事件时遇到了一个问题 这就是我如何创建我的覆盖图的方法: new Overlay({ id: "overlay", element: this.refs.mapOverlay, stopEvent: true }); 问题是,onClick事件没有被触发 但有些事件是: onClick未触发 onMouseDown未触发 onPointerDown未触发 onMouseUp

我使用的是OpenLayers 5.3.3和React 16.8.6

我在试图处理地图上显示的覆盖图上的单击事件时遇到了一个问题

这就是我如何创建我的
覆盖图的方法:

new Overlay({
  id: "overlay",
  element: this.refs.mapOverlay,
  stopEvent: true
});
问题是,
onClick
事件没有被触发

但有些事件是:

  • onClick
    未触发
  • onMouseDown
    未触发
  • onPointerDown
    未触发
  • onMouseUp
    已触发
  • onmouseinter
    已触发
  • onMouseLeave
    已触发
如果在创建覆盖时设置
stopEvent:false
,它会触发所有事件,但这些事件会传播到下面的映射,这会导致其他问题

编辑:我制作了一个原型来测试这种行为:

如果设置了
stopEvent
,而
onMouseUp
处于禁用状态,则可以通过单击覆盖来检查是否未触发
onClick
事件