4

完全に重なり合う 2 つの div があります。上記の div は部分的に透明な HTML5 キャンバスであり、透明でない部分はマウス ホバー、クリック、スクロールなどと相互作用します。

以下の div にはマップ (リーフレットを使用) があり、同様に、ホバー、クリック、スクロールなどと対話することになっています。

次のようなコードを使用して、両方の div でクリックを登録できます。

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

ただし、アプリが正しく動作するためには、クリック イベント (および他のすべてのマウス イベント) を同じ XY 位置に登録する必要があります。

2 つの div が完全に重なっている (AKA 同一の 4 つのコーナー) ため、新しいクリック関数に渡すだけで済みますが、これを行う方法がわかりませe.pageXん。e.pageYJQuery (またはその他の代替手段) を使用して、div の特定の XY 位置にクリックを登録するにはどうすればよい#mapですか?

4

1 に答える 1

1
  // 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 の特定の XY 位置にクリックを登録」します。

于 2012-11-17T23:23:36.223 に答える