javascript - 如何使用 JQuery 以编程方式单击特定 div 上的特定 X-Y​​ 位置?

标签 javascript jquery html canvas mouseevent

我有两个完全重叠的 div。上面的div是一个部分透明的HTML5 Canvas ,不透明的部分与鼠标悬停、点击、滚动等交互。

下面的 div 有一个 map (使用传单),同样它应该与悬停、点击、滚动等交互。

我可以通过如下代码在两个 div 中注册一个点击:

$("#canvas").click(function(e){
    $('#map').click();
}

但是,为了让我的应用正常工作,点击事件(以及所有其他鼠标事件)需要在相同的 X-Y 位置注册。

我真正需要做的就是将 e.pageXe.pageY 传递给新的点击功能,因为这两个 div 完全重叠(也就是相同的 4 个 Angular ) - 但是我不确定该怎么做。使用 JQuery(或任何其他替代方法),如何在 div #map 中的特定 X-Y​​ 位置注册点击?

最佳答案

  // Create a new jQuery.Event object with specified event properties.
  var e = jQuery.Event("click", { pageX: pageX, pageY: pageY });

  // trigger an artificial keydown event with keyCode 64
  jQuery("#map").trigger( e ); 

这将“在 div #map 中的特定 X-Y​​ 位置注册点击”。

关于javascript - 如何使用 JQuery 以编程方式单击特定 div 上的特定 X-Y​​ 位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13435752/

相关文章:

javascript - 垂直内联的 Div 框

javascript - 这段JS代码是什么意思?

javascript - Leaflet MarkerCluster - 如何检查集群是否将被蜘蛛化(即具有 maxZoom 级别)?

jquery - 无法使用 jQuery 在 HTML 中的选项卡上捕获点击事件

javascript - 将值直接放入输入文本框形式?

javascript - 如何在 Select2 中先设置占位符

javascript对象没有被分配正确的成员值

javascript - JavaScript 中的 "this"。对工厂内对象的引用

javascript - 使用文本字段中的值更新隐藏表单字段

html - 单击按钮时表格行变宽