Shiva Manhar
Shiva Manhar

Reputation: 703

Click trigger with pass X, Y coordinates value

When we are click in any HTML element we can get X, Y coordinate in our mouse.

Is it possible in jquery or javascript trigger click event with pass X, Y Coordinates value of HTML element and also pass element z-index value. Only call #block2 not call #block1.

JS

$(document).ready(function(){
$('#block1 div').on('click', function(e)
  {
    console.log(document.elementFromPoint(e.pageX, e.pageY));
    var X = e.pageX;
    var Y = e.pageY;
    $('#block1').css({'pointer-events':'none'});
    $('#block1 div').css({'pointer-events':'none'});
    var eobj = new jQuery.Event("click");
    obj.pageX = X;
    obj.pageY = Y;
    $('#time_slice').trigger(obj);
  });
});


$('#block2').on('click', function(e){
   console.log(document.elementFromPoint(e.pageX, e.pageY));
   $('#block1').css({'pointer-events':'auto'});
   $('#block1 div').css({'pointer-events':'auto'});
});

Jsfiddle

Upvotes: 1

Views: 1651

Answers (1)

Guillaume Georges
Guillaume Georges

Reputation: 4020

You can create a MouseEvent and set clientX and clientY values.

Then dispatch that event.

window.addEventListener("click", function (event) {
  console.log(`you clicked at ${event.x},${event.y}`);
});

const event = new MouseEvent('click', {
    'clientX' : 200, 
    'clientY' : 500
  });
window.dispatchEvent(event);

Upvotes: 2

Related Questions