<canvas id="MyCanvas" width="800" height="600"></canvas>
I want to simulate a click at some position (ex. x=200, y=150).
var MyCanvas = document.getElementById('MyCanvas');
MyCanvas.click(200, 150);
Above code does't work. The same with below slightly modified one:
var MyCanvas = document.getElementById('MyCanvas');
MyCanvas.click({pageX: 200, pageY: 150});
... and with below code copied from Simulate click at x/y coordinates using javascript.
function simulateClick(x, y) {
var clickEvent = document.createEvent('MouseEvents');
clickEvent.initMouseEvent(
'click', true, true, window, 0,
0, 0, x, y, false, false,
false, false, 0, null
);
document.elementFromPoint(x, y).dispatchEvent(clickEvent);
}
simulateClick(200, 150);
Below is the code based on the above one but this doesn't work too.
function simulateClick(x, y){
document.elementFromPoint(x, y).click();
}
simulateClick(200, 150);
The last code doesn't trigger a click as well.
function simulateClick(targetCanvas, x, y) {
var clickEvent = new MouseEvent(
"click",
{
clientX: x,
clientY: y,
bubbles: true
}
);
targetCanvas.dispatchEvent(clickEvent);
}
var MyCanvas = document.getElementById('MyCanvas');
simulateClick(MyCanvas, 200, 150);