如何使用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/
<script>
标签中,包含jquery,它应该可以工作。我不相信有一种模拟右键单击的方法,而模拟iframe内部的单击技术将会非常不同。如果您需要能够做到这一点,那么iframe必须在与父窗口相同的域上,并且我建议创建第二个问题。(即“如何模拟iframe内部的单击”) - Prestaul在第二次尝试中,我将分享我的经验并更新Prestaul的答案。
在大多数情况下,您不仅希望点击元素以触发“onclick”事件,而且还希望将单击信息用于某些操作(例如:移动滑块到那里,或在该确切位置放置弹出窗口)。
我主要使用原生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);
}