使用javascript在x/y坐标处模拟单击

Ahm*_*fez 5 javascript jquery click simulate

如何使用javascript或jquery模拟x/y坐标上的单击?

我将多次使用该脚本,我希望脚本点击位置1然后位置两个然后三个然后四个一个.

没有移动鼠标光标会更好,但如果必须移动那么那也没关系.

Pre*_*aul 18

这实际上可以通过该document.elementFromPoint方法实现.一个jQuery示例:

function simulateClick(x, y) {
    jQuery(document.elementFromPoint(x, y)).click();
}
simulateClick(100, 250);
simulateClick(400, 250);
Run Code Online (Sandbox Code Playgroud)

编辑:这是一个工作示例:http://jsfiddle.net/z5YjY/


小智 5

在第二部分,我将分享我的经验,并更新Prestaul的答案.

在大多数情况下,你不只是想点击一个元素来引发'onclick'事件,但你想使用点击信息来做某些事情(例如:在那里移动一个滑块,或者在那个位置放一个弹出窗口)地点).

我主要使用香草js,但它与$混合得很好.

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);
}
Run Code Online (Sandbox Code Playgroud)

基本上这将通过事件向下传递正确的pageX/pageY,以供进一步使用.

我也更新了小提琴,以显示这些坐标的使用:http: //jsfiddle.net/V4CdC/