如何使用 javascript 或 jquery 模拟 x/y 坐标的点击?
我将多次使用该脚本,并且我希望该脚本先单击位置一,然后单击位置二,然后单击位置三,然后单击位置四,依此类推。
最好不移动鼠标光标,但如果它必须移动,那也很好。
如何使用 javascript 或 jquery 模拟 x/y 坐标的点击?
我将多次使用该脚本,并且我希望该脚本先单击位置一,然后单击位置二,然后单击位置三,然后单击位置四,依此类推。
最好不移动鼠标光标,但如果它必须移动,那也很好。
这实际上可以通过该document.elementFromPoint
方法来完成。一个 jQuery 示例:
function simulateClick(x, y) {
jQuery(document.elementFromPoint(x, y)).click();
}
simulateClick(100, 250);
simulateClick(400, 250);
编辑:这是一个工作示例:http: //jsfiddle.net/z5YjY/
在第二次拍摄时,我会分享我的经验,并更新 Prestaul 的答案。
在大多数情况下,您不只是想点击一个元素来引发“onclick”事件,而是想将点击信息用于某些事情(例如:将滑块移到那里,或者在那个位置放一个弹出窗口)地方)。
我主要使用 vanilla 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);
}
基本上,这将通过事件传递正确的 pageX / pageY,以供进一步使用。
我也更新了小提琴,以展示这些坐标的使用:http: //jsfiddle.net/V4CdC/